记录一次ORACLE数据库expdp导出与impdp导入

记录一次ORACLE数据库expdp导出与impdp导入

总体思路:
利用expdp从数据源导出dmp文件,利用impdp将dmp文档导入目标数据库
expdp导出步骤:
1.导出文件夹位置: 例如:/home/oracle/data (如果没有需要创建)
2.sqlplus登录(dba用户)
create directory data_dir as ‘/home/oracle/data’;(创建逻辑文件)
select * from dba_directories;(查看命令)
create or replace directory data_dir as ‘/home/oracle/data’;(修改命令)
grant read,write on directory data_dir to task;(用户名);
GRANT EXP_FULL_DATABASE to task;(给用户操作数据库授权,全量导出)
3.执行导出命令"
expdp task/password@ip/orcl schemas=task dumpfile=expdp.dmp directory=data_dir logfile=expdp.log;
impdp导入步骤:
1.重复导出步骤的1,2步骤 即创建 逻辑文件
2.本次将源数据中task用户下的表导入目标数据库的task用户 由于目标数据库没有task用户 所以需要新建
create user task identified by password;(创建用户)
alter user oracle identified by password;(修改密码)
grant dba to task;(给用户授权)
执行impdp导入命令
impdp task/password@ip/orcl schemas=task directory=data_dir dumpfile=expdpdmp logfile=impdp.log;
已上为步骤为:schemas按用户导出
其他导出方式
第一种:“full=y”,全量导出数据库;
expdp user/passwd@orcl dumpfile=expdp.dmp directory=data_dir full=y logfile=expdp.log;
第二种:schemas按用户导出;
expdp user/passwd@orcl schemas=user dumpfile=expdp.dmp directory=data_dir logfile=expdp.log;
第三种:按表空间导出;
expdp sys/passwd@orcl tablespace=tbs1,tbs2 dumpfile=expdp.dmp directory=data_dir logfile=expdp.log;
第四种:导出表;
expdp user/passwd@orcl tables=table1,table2 dumpfile=expdp.dmp directory=data_dir logfile=expdp.log;
第五种:按查询条件导;
expdp user/passwd@orcl tables=table1=‘where id=1’ dumpfile=expdp.dmp directory=data_dir logfile=expdp.log;

你可能感兴趣的:(ORACLE)