oracle 如何导入dmp文件到指定表空间

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

oracle 如何导入dmp文件到指定表空间

2010年01月14日星期四 13:27

1. 打开工具Oracle SQL Plus 以dba身份登录sys用户

user: sys

password: sys

主机字符串(H):orcl as sysdba

2. 创建用户并指定表空间

--create user 用户名 identified by 密码 default tablespace 缺省表空间Temporary tablespace 临时表空间;

drop user jandardb cascade;

create user jandardb identified by jandardb;

alter user jandardb default tablespace jandardb;

grant connect,resource,dba to jandardb; --grant

connect,resource,dba to 用户名;

revoke unlimited tablespce from jandardb; --revoke unlimited tablespace from 用户名;

alter user jandardb quota 0 on users; --alter user 用户名 quota 0 on Users;

alter user jandardb quota unlimited on jandardb; --alter user 用户名quota unlimited on 用户缺省表空间;

3. 使用imp工具导入dmp数据文件

imp jandardb/jandardb@orcl file=c:\jandardb.dmp fromuser=jandardb touser=jandardb log=c:\log.txt

数据库中用户try的数据一直放在system表空间中;今天把该用户的所有数据exp到文件try.dmp中,准备再导入到另一个测试数据数据中的test 用户中,同时放在test表空间中。

1、在第一个数据库导出数据:exp try/try wner=try file=/try.dmp

log=try.log

2、将try.dmp ftp到第二个数据库所在主机上

3、在第二个数据库导入数据:imp test/test fromuser=try touser=test file=/try.dmp log=test.log

但是导完后发现数据任然被导入到了system表空中。

后通过查询后得知,要成功导入其他表空间需要

1、先将test用户在system空间中的UNLIMITED TABLESPACE权限回收:REVOKE UNLIMITED TABLESPACE FROM test

2、设置默认表空间:alter user test default tablespace test

3、设置默认的表空间无限配额:alter user test quota unlimited on test

4、设置特斯通用户对其他表空间的quota为0:alter user test quota 0 on system。。。。。。。

再重新导入try.dmp,这是数据全部导入到test表空中了。

相关文档
最新文档