背景:

公司年底打算将aws rds11.2.0.4 oracle 数据库升级到19c,所以需要进行升级测试,所以需要我把线上的库数据迁移到一台测试的rds oracle 亚马逊云的数据库中,然后升级这一台oracle数据库,测试升级时间,云上和linux服务器操作其实真的不太一样,经过封装忽的Oracle。

环境:

源端:

windows 2012 oracle 11.2.0.4

目标端:

rds 11.2.0.4

迁移操作步骤:

首先我是把线上的rds数据库 通过dblink1导到源端,然后通过源端 dblink2, DBMS_FILE_TRANSFER.PUT_FILE命令传到亚马逊服务器,后面通过在源端执行语句,导入到亚马逊测试服务器上。

线上导出语句比较简单,由于要准确的估计升级时间,我找的线上数据量最大的一个数据库,然后导出全部业务数据;

导出语句如下:

set NLS_LANG=AMERICAN_AMERICA.AL32UTF8
set dd=%date:~8,2%
set mm=%date:~5,2%
set yy=%date:~0,4%
set Tss=%TIME:~6,2%
set Tmm=%TIME:~3,2%
set Thh=%TIME:~0,2%
set Thh=%Thh: =0%

expdp USERNAME/XXX directory=EXPDP_DUMP network_link=RDS_CLD_8 dumpfile=RDS_CLD_8_%yy%%mm%%dd%_%Thh%%Tmm%.dmp logfile=RDS_CLD_8_%yy%%mm%%dd%_%Thh%%Tmm%.log schemas=racttfc compression=ALL

由于 db_link中RDS_CLD_8 为源端到线上数据库(数据量最大的数据库),现在需要把导到源端的dmp文件传到亚马逊服务器,需要配置db_link,以及目标RDS数据库中创建directory对象

配置源端连接test rds的tns(次步骤省略),创建源端到test rds 的db_link:

create database link RDS_19CUPGRADE
connect to  username identified by "XXXX"
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = xx)
)
)';

test rds 创建目录:

exec rdsadmin.rdsadmin_util.create_directory('dpump_dir');

需要上传的文件:

BEGIN
DBMS_FILE_TRANSFER.PUT_FILE(
source_directory_object => 'EXPDP_DUMP',    --源端目录
source_file_name => 'RDS_CLD_8_20200828_1939.DMP',   --源端导出的文件名
destination_directory_object => 'dpump_dir', --目标端目录
destination_file_name => 'RDS_CLD_8_20200828_1939.DMP', --目标端上传后的文件名
destination_database => 'RDS_19CUPGRADE');  --DBLINK的名称
END;
/

导出的压缩的文件16G,大约5分钟,还是比较的快。

后面进行导入语句,源端执行的,比较简单:

impdp username/XXX@19cupgrade directory=dpump_dir dumpfile=RDS_CLD_8_20200828_1939.DMP logfile=19c.log remap_Schema=racttfc:racttfc

导入相对就慢了……

最新文章

  1. iOS中UIImageView的填充模式
  2. 【Discuz】-QQ互联登陆提示错误信息:Unknown column 'conuintoken' in 'field list'
  3. Spark 个人实战系列(2)--Spark 服务脚本分析
  4. [数据库]SQL Server 用户NT AUTHORITY\IUSR 登录失败
  5. Oracle 闪回特性(FLASHBACK DATABASE)
  6. HDOU/HDU 2548 两军交锋(看你的思维~)
  7. JLINK烧写BIN文件到nand、norflash、SDRAM
  8. linux 学习之七-部分ssh命令
  9. trie + 长度优先匹配,生成串
  10. class.forname()方法的学习(转)
  11. Android media媒体库分析之:MediaProvider
  12. SQL写操作 设置内容 (数组转字符串)
  13. Mybatis主配置文件常见使用讲解
  14. 深入理解 Promise
  15. Visual Studio 2017 Enterprise (15.3)
  16. 将博客搬至CSDN http://blog.csdn.net/yi_xianyong
  17. Windows10家庭版连接远程桌面出现credssp加密oracle修正问题
  18. https申请部署
  19. token是什么
  20. 实验二 C#程序设计 总结

热门文章

  1. PHP next() 函数
  2. C++模板沉思录(上)
  3. ElasticSearch实战系列六: Logstash快速入门和实战
  4. 数据库Schema
  5. git push到远程仓库
  6. JDBC回顾
  7. 3、Java 对象和类
  8. Mysql Column 'xxxxx' in field list is ambiguous"
  9. 强化学习 3—— 使用蒙特卡洛采样法(MC)解决无模型预测与控制问题
  10. C#LeetCode刷题之#345-反转字符串中的元音字母​​​​​​​(Reverse Vowels of a String)