Oracle 导入dmp文件最安全步骤

来源:互联网 发布:淘宝店怎么开起来 编辑:程序博客网 时间:2024/05/16 19:50

准备工作(导出dmp文件)

 

1.使用PL/SQL  工具--》导出用户对象 ,导出用户所有表,视图,存储过程等的定义

 

2.使用PL/SQL 工具--> 导出表,导出所有表的数据 这就是那个dmp文件

 

保存好导出的sql脚本和dmp文件准备导入

 

 

好了,开始导入

 

1.删除用户

 

drop user test cascade;


2.删除全部表空间

 

drop tablespace testdb INCLUDING CONTENTS;


drop tablespace testdb_index INCLUDING CONTENTS;

 

drop tablespace testdb_temp INCLUDING CONTENTS;

 

3.重新创建表空间和用户并给用户授权

 

CREATE TABLESPACE "DB_QQTB"
    LOGGING
    DATAFILE 'D:/oracle/OraData/DB_QQTB01.ora' SIZE 2000M,
    'D:/oracle/OraData/DB_QQTB02.ora' SIZE 2000M,
    'D:/oracle/OraData/DB_QQTB03.ora' SIZE 2000M EXTENT MANAGEMENT LOCAL
    SEGMENT SPACE MANAGEMENT  AUTO
/
CREATE TABLESPACE "DB_QQTB_INDEX"
    LOGGING
    DATAFILE 'D:/oracle/OraData/DB_QQTB_INDEX.ora' SIZE 500M EXTENT
    MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT  AUTO
/
CREATE
    TEMPORARY TABLESPACE "DB_QQTB_TEMP" TEMPFILE
    'D:/oracle/OraData/DB_QQTB_TEMP.ora' SIZE 200M EXTENT MANAGEMENT
    LOCAL UNIFORM SIZE 1M
/


 

 

create user FZCX
  identified by "FZCX"
  default tablespace DB_QQTB
  temporary tablespace DB_QQTB_TEMP
  profile DEFAULT
  quota unlimited on DB_QQTB
  quota unlimited on DB_QQTB_temp;
-- Grant/Revoke role privileges
grant connect to FZCX;
grant exp_full_database to FZCX;
grant imp_full_database to FZCX;
grant resource to FZCX;
-- Grant/Revoke system privileges
grant create procedure to FZCX;
grant create trigger to FZCX;
grant execute any procedure to FZCX;
grant grant any privilege to FZCX;
grant restricted session to FZCX;
grant select any table to FZCX;
grant unlimited tablespace to FZCX;
grant create any view to FZCX;

 

4.打开SQLPLUS(不要使用PL/SQL,sql脚本太大),@路径+文件名.sql 导入表定义

这时候表的定义已经完成,但表中还没有数据,现在可以测试一下,表是否存在

 

5.使用PL/SQL 工具-->导入表-->Oracle导入 选择dmp文件 自动启动Sqlplus

 

成功!!!

 


错误分析:

1.请注意数据文件的大小是否足够,否则会出现错误,建议设置的大一些,最好分区是ntfs格式

2.请注意导出dmp的用户是否是当前执行导入的用户 出现 用户名: 要求输入的是fromuser 表示导出dmp的用户名,必须准确

原创粉丝点击