欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

由Oracle库文件建立完整数据库的过程

程序员文章站 2024-02-17 17:10:10
...

由Oracle库文件建立完整数据库的过程,首先在本地建立一个ORACLE数据库,全局数据库名和SID我都写了SCHOOL。

最近帮忙老师写一部分网站管理系统的功能,由于不在同一个地方,老师发给了我一个库文件(后续名为.dmp),要我自己建个数据库在上面跑起来,下面就说说我做的步骤,以免到时候需要用的时候又忘了。

1、首先在本地建立一个Oracle数据库,全局数据库名和SID我都写了SCHOOL。

2、以管理员身份登录该数据库,我是以SYSTEM,密码是建数据库时设的密码登录的。

3、用PL/SQL登录该数据库后,就可以创建用户了,代码如下:

create user myxuser identified by myxuser;

同时也可以修改数据库密码:alter user zzg identified by unis;

4、默认情况下用户创建好后系统会默认给该用户分配一个表空间(users),我们可以通过下面的语句来查看一下所有用户所在的表空间:

  select username,default_tablespace from dba_users;

一般情况下我们不会用用户的默认表空间,这时我们可以自己创建一个表空间:

create tablespace myxuser_data datafile 'e:\myxuser.dbf' size 200M;其中tablespace后面的为表空间的名字;datafile后的路径为表空间的物理存储路径;文件的后缀可以随便取;

size 200M是设定了表空间的大小。

5、创建好表空间,并将表空间分配给用户:alter user myxuser default tablespace myxuser_data;

6、给用户myxuser分配权限:grant create session,create table,create view,create sequence,unlimited tablespace to myxuser;

7、这样用户myxuser就可以登录了。同时把.dmp文件导入数据库:imp myxuser/myxuser@SCHOOL file=E:\school20130120.dmp fromuser=myxuser touser=myxuser

这里出现了点小问题,出现错误:IMP-00013,只有DBA才能导入由其他DBA导出的文件。所以我们要把DBA权限赋予给用户myxuser:

grant dba to myxuser;

至此发现数据库中知导入了一部分的表,,查询原因,

原来因为我给用户myxuser分配的表空间大小为200M,但库文件内容比较多,所以只导入了一部分表,故应自动扩展表空间的大小:

ALTER DATABASE DATAFILE 'E:\MYXUSER.DBF' AUTOEXTEND ON NEXT 200M ;//每次自动增长200M

至此则导入成功。

由Oracle库文件建立完整数据库的过程