oracle 数据库expdp/impdp迁移数据库

为了保证数据一致性,迁移前需要暂停应用或修改数据库连接密码

先修改原库密码
原密码:xxx
alter user system identified by 12345678;


修改新建目的库初始化设置
密码期限,连接数等

一:字符集查询
select userenv('language') from dual;
AMERICAN_AMERICA.ZHS16GBK
注意:目的端创建相同字符集数据库

二:在目的端数据库创建和源端数据库相同表空间
1)select * from dba_data_files;
2)创建表空间
create tablespace xxx
datafile 'E:\APP\ADMINISTRATOR\ORADATA\PROD2015\xxx.DBF'  
size 50m  autoextend on  
next 50m maxsize UNLIMITED;
扩充表空间
ALTER TABLESPACE xxx ADD DATAFILE 'E:\APP\ADMINISTRATOR\ORADATA\PROD2015\xxx.DBF' SIZE 50M  AUTOEXTEND ON NEXT 5M MAXSIZE unlimited;
注意:目的端执行

三:按用户导出
1)创建目录
手工创建目录E:\dpsource1
create directory dpsource as 'E:\dpsource1';
select * from dba_directories;
----
2)执行导出命令

set ORACLE_SID=prod2015
expdp system/xxx schemas=EDI  dumpfile=EDI.dmp DIRECTORY=dpsource  PARALLEL=4 logfile=expdp_EDI.log;
expdp system/xxx schemas=SYSADM  dumpfile=SYSADM.dmp DIRECTORY=dpsource  PARALLEL=4 logfile=expdp_SYSADM.log;
expdp system/xxx schemas=SYSLOG  dumpfile=SYSLOG.dmp DIRECTORY=dpsource  PARALLEL=4 logfile=expdp_SYSLOG.log;

3)拷贝源端E:\dpsource1下的dmp文件到目的端目录E:\dpgoal1(在目的端手动创建)
四:按用户导入
1)创建目录
创建目录E:\dpgoal1
create directory dpgoal as 'E:\dpgoal1';
select * from dba_directories;
查询用户默认表空间
select * from dba_users
2)执行导入命令

set ORACLE_SID=prod2015
impdp system/xxx schemas=EDI  dumpfile=EDI.dmp DIRECTORY=dpgoal  PARALLEL=4 logfile=expdp_EDI.log;
impdp system/xxx schemas=SYSADM  dumpfile=SYSADM.dmp DIRECTORY=dpgoal  PARALLEL=4 logfile=expdp_SYSADM.log;
impdp system/xxx schemas=SYSLOG  dumpfile=SYSLOG.dmp DIRECTORY=dpgoal  PARALLEL=4 logfile=expdp_SYSLOG.log;

注意:

目的端提前创建表空间

目的端不用创建用户,默认自动创建

导入目的端时,数据库顺序可能造成视图等对象报错,需要手动重新编译

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值