【TTS】基于RMAN迁移AIX平台数据库到Linux(第三篇)

1.1  传输数据

文件和元数据到target

这里需要传输转储元文件和数据文件到目标库

【TTS】基于RMAN迁移AIX平台数据库到Linux(第三篇)_第1张图片

【TTS】基于RMAN迁移AIX平台数据库到Linux(第三篇)_第2张图片

1.1.1  dbca创建target

[oracle@rhel6_lhrdbca]$ dbca -silent -createDatabase -templateNameGeneral_Purpose.dbc -gdbname oraSKY -sid oraSKY -sysPassword lhr-systemPassword lhr -responseFile NO_VALUE -datafileDestination 'DATA/'-redoLogFileSize 50 -recoveryAreaDestination 'FRA/' -storageType ASM-asmsnmpPassword lhr  -diskGroupName'DATA'  -characterSet AL32UTF8 -nationalCharacterSetAL16UTF16 -sampleSchema true -memoryPercentage 20 -totalMemory 200-databaseType OLTP -emConfiguration NONE -automaticMemoryManagement true

Copyingdatabase files

1%complete

3%complete

35%complete

Creatingand starting Oracle instance

37%complete

42%complete

47%complete

52%complete

53%complete

56%complete

58%complete

Registeringdatabase with Oracle Restart

64%complete

CompletingDatabase Creation

68%complete

71%complete

75%complete

85%complete

96%complete

100%complete

Lookat the log file "/u01/app/oracle/cfgtoollogs/dbca/oraSKY/oraSKY.log"for further details.

1.1.2  查看目标库数据文件位置和导入目录

[oracle@rhel6_lhrdbs]$ echo $ORACLE_SID

oraSKY

[oracle@rhel6_lhrdbs]$ sqlplus / as sysdba

 

SYS@oraSKY>  selectdirectory_name,directory_path from dba_directories;

 

DIRECTORY_NAME                    DIRECTORY_PATH

------------------------------   -------------------------------------------------------------------------------

SUBDIR                           /u01/app/oracle/product/11.2.0/dbhome_1/demo/schema/order_entry//2002/Sep

SS_OE_XMLDIR                     /u01/app/oracle/product/11.2.0/dbhome_1/demo/schema/order_entry/

LOG_FILE_DIR                      /u01/app/oracle/product/11.2.0/dbhome_1/demo/schema/log/

MEDIA_DIR                        /u01/app/oracle/product/11.2.0/dbhome_1/demo/schema/product_media/

XMLDIR                           /u01/app/oracle/product/11.2.0/dbhome_1/rdbms/xml

DATA_FILE_DIR                    /u01/app/oracle/product/11.2.0/dbhome_1/demo/schema/sales_history/

DATA_PUMP_DIR                    /u01/app/oracle/admin/oraSKY/dpdump/

ORACLE_OCM_CONFIG_DIR            /u01/app/oracle/product/11.2.0/dbhome_1/ccr/state

已选择8行。

 

 

1.1.3  利用ftp工具传输转储元文件到目标库

【TTS】基于RMAN迁移AIX平台数据库到Linux(第三篇)_第3张图片

1.1.4  拷贝文件到目标库相应位置并修改文件权限

[root@rhel6_lhr~]# cd /u01/app/oracle/admin/oraSKY/dpdump

[root@rhel6_lhrdpdump]# ll

total461108

-rw-r--r--1 root root    204800 Feb 17  2017 dmpfile.dmp

-rw-r--r--1 root root      3943 Feb 17  2017 impscrpt.sql

-rw-r--r--1 root root 104865792 Feb 17  2017o1_mf_test_use_dbflvw0f_.dbf

-rw-r--r--1 root root 314580992 Feb 17  2017o1_mf_users_dbflvvv1_.dbf

-rw-r--r--1 root root   5251072 Feb 17  2017 o1_mf_xpaddata_dbflvxjw_.dbf

-rw-r--r--1 root root   5251072 Feb 17  2017 o1_mf_xpaddata_dbflvy06_.dbf

[root@rhel6_lhrdpdump]# chown oracle:dba *

[root@rhel6_lhrdpdump]# ll

total461108

-rw-r--r--1 oracle dba    204800 Feb 17  2017 dmpfile.dmp

-rw-r--r--1 oracle dba      3943 Feb 17  2017 impscrpt.sql

-rw-r--r--1 oracle dba   5251072 Feb 17  2017 o1_mf_xpaddata_dbflvy06_.dbf

[root@rhel6_lhrdpdump]#

 

1.2   target端转换字节序

 

[oracle@rhel6_lhrdbca]$ rman target /

 

恢复管理器:Release 11.2.0.3.0 - Production on 星期三 2月 3 00:24:06 2016

 

Copyright(c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.

 

已连接到目标数据库:ORASKY (DBID=4027046368)

 

RMAN>CONVERT DATAFILE

2>"/u01/app/oracle/admin/oraSKY/dpdump/o1_mf_test_use_dbflvw0f_.dbf",

3>"/u01/app/oracle/admin/oraSKY/dpdump/o1_mf_users_dbflvvv1_.dbf",

...

13>"/u01/app/oracle/admin/oraSKY/dpdump/o1_mf_xpaddata_dbflvy06_.dbf"

14> TOPLATFORM="Linux x86 64-bit"

15> FROMPLATFORM="AIX-Based Systems (64-bit)"

16>FORMAT '+DATA';

 

启动 conversionat target 于 2016-02-03 00:24:09

使用目标数据库控制文件替代恢复目录

分配的通道:ORA_DISK_1

通道ORA_DISK_1: SID=147 设备类型=DISK

通道ORA_DISK_1: 启动数据文件转换

输入文件名=/u01/app/oracle/admin/oraSKY/dpdump/o1_mf_users_dbflvvv1_.dbf

已转换的数据文件 =+DATA/orasky/datafile/users.280.902795051

通道ORA_DISK_1: 数据文件转换完毕, 经过时间:00:00:45

输入文件名=/u01/app/oracle/admin/oraSKY/dpdump/o1_mf_xpaddata_dbflvy06_.dbf

已转换的数据文件 =+DATA/orasky/datafile/xpaddata.298.902795133

通道ORA_DISK_1: 数据文件转换完毕, 经过时间:00:00:01

完成 conversionat target 于 2016-02-03 00:25:34

1.3  开始导入

1.3.1  创建source库的需要迁移的3个用户并赋权限(前边的脚本已经生成,直接拿过来执行)

如果不创建用户会报如下的错误:

ORA-39123: DataPump transportable tablespace job aborted

ORA-29342: userUSER_APP1 does not exist in the database

 

createuser TEST1 identified by TEST1  TEMPORARYTABLESPACE  TEMP;

GRANTUNLIMITED TABLESPACE TO TEST1;

GRANTCONNECT TO TEST1;

GRANTRESOURCE TO TEST1;

GRANTWRITE ON SYS.TEST_DIR TO TEST1;

GRANTREAD ON SYS.TEST_DIR TO TEST1;

GRANTWRITE ON SYS.TEST_LOG TO TEST1;

GRANTREAD ON SYS.TEST_LOG TO TEST1;

createuser XPADAD identified by XPADAD TEMPORARY TABLESPACE  TEMP;

GRANTCREATE VIEW TO XPADAD;

GRANTUNLIMITED TABLESPACE TO XPADAD;

GRANTCREATE DATABASE LINK TO XPADAD;

GRANTDBA TO XPADAD;

GRANTCONNECT TO XPADAD;

GRANTRESOURCE TO XPADAD;

createuser T identified by T default TEMPORARY TABLESPACE  TEMP;

GRANTUNLIMITED TABLESPACE TO T;

GRANTRESOURCE TO T;

GRANTCONNECT TO T;

GRANTWRITE ON SYS.TT TO T;

GRANTREAD ON SYS.TT TO T;

1.3.2  开始导入

[oracle@rhel6_lhrdbca]$ impdp \'/ as sysdba \' DUMPFILE=dmpfile.dmpDIRECTORY=DATA_PUMP_DIR TRANSPORT_DATAFILES='+data/ORASKY/datafile/XPADDATA.298.902795133','+data/ORASKY/datafile/XPADDATA.297.902795133','+data/ORASKY/datafile/XPADDATA.296.902795129','+data/ORASKY/datafile/XPADDATA.281.902795127','+data/ORASKY/datafile/XPADDATA.277.902795121','+data/ORASKY/datafile/XPADDATA.276.902795121','+data/ORASKY/datafile/XPADDATA.275.902795123','+data/ORASKY/datafile/XPADDATA.270.902795125','+data/ORASKY/datafile/XPADDATA.268.902795127','+data/ORASKY/datafile/XPADDATA.267.902795125','+data/ORASKY/datafile/USERS.292.902793265','+data/ORASKY/datafile/TEST_USER1.278.902795095'LOGFILE=impdp_tts_20160202.log

 

可能会有报错

ORA-39123:数据泵可传输的表空间作业中止

ORA-29349:表空间 'USERS' 已存在

作业"SYS"."SYS_IMPORT_TRANSPORTABLE_01" 因致命错误于 00:35:50 停止

users表空间已经存在了,这里把target端的users表空间重命名一下就可以了:

 

[oracle@rhel6_lhrdbca]$ sqlplus / as sysdba

SYS@oraSKY>  alter tablespace users rename tousers01;

表空间已更改。

继续导入

Import:Release 11.2.0.3.0 - Production on 星期三 2月 3 00:40:46 2016

已成功加载/卸载了主表 "SYS"."SYS_IMPORT_TRANSPORTABLE_01"

启动"SYS"."SYS_IMPORT_TRANSPORTABLE_01":  "/******** AS SYSDBA"DUMPFILE=dmpfile.dmp DIRECTORY=DATA_PUMP_DIR TRANSPORT_DATAFILES=+data/ORASKY/datafile/XPADDATA.298.902795133,+data/ORASKY/datafile/XPADDATA.297.902795133,+data/ORASKY/datafile/XPADDATA.296.902795129,+data/ORASKY/datafile/XPADDATA.281.902795127,+data/ORASKY/datafile/XPADDATA.277.902795121,+data/ORASKY/datafile/XPADDATA.276.902795121,+data/ORASKY/datafile/XPADDATA.275.902795123,+data/ORASKY/datafile/XPADDATA.270.902795125,+data/ORASKY/datafile/XPADDATA.268.902795127,+data/ORASKY/datafile/XPADDATA.267.902795125,+data/ORASKY/datafile/USERS.280.902795051,+data/ORASKY/datafile/TEST_USER1.278.902795095LOGFILE=impdp_tts_20160202.log

处理对象类型TRANSPORTABLE_EXPORT/PLUGTS_BLK

处理对象类型TRANSPORTABLE_EXPORT/TABLE

ORA-39151:表 "SCOTT"."EMP" 已存在。由于跳过了 table_exists_action, 将跳过所有相关元数据和数据。

处理对象类型TRANSPORTABLE_EXPORT/INDEX/INDEX

处理对象类型TRANSPORTABLE_EXPORT/INDEX_STATISTICS

处理对象类型TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK

作业"SYS"."SYS_IMPORT_TRANSPORTABLE_01" 已经完成, 但是有 1 个错误 (于 00:40:51 完成)

1.3.2.1  报错:sourcetargetcompatible参数不同引起ora-00721错误

[oracle@rhel6_lhrdbs]$ impdp \'/ as sysdba \' DUMPFILE=dmpfile.dmp DIRECTORY=DATA_PUMP_DIRTRANSPORT_DATAFILES='+DATA/orclasm/datafile/app1tbs.271.90278175','+DATA/orclasm/datafile/APP2TBS.276.902781757','+DATA/orclasm/datafile/IDXTBS.279.902781761'LOGFILE=impdp_tts_20160202.log version=latest

已成功加载/卸载了主表 "SYS"."SYS_IMPORT_TRANSPORTABLE_01"

启动"SYS"."SYS_IMPORT_TRANSPORTABLE_01":  "/******** AS SYSDBA"DUMPFILE=dmpfile.dmp DIRECTORY=DATA_PUMP_DIRTRANSPORT_DATAFILES=+DATA/orclasm/datafile/app1tbs.271.90278175,+DATA/orclasm/datafile/APP2TBS.276.902781757,+DATA/orclasm/datafile/IDXTBS.279.902781761LOGFILE=impdp_tts_20160202.log version=latest

处理对象类型TRANSPORTABLE_EXPORT/PLUGTS_BLK

ORA-39123:数据泵可传输的表空间作业中止

ORA-00721:发行版 11.2.0.4.0 中的更改无法用于发行版 11.2.0.3.0

 

作业"SYS"."SYS_IMPORT_TRANSPORTABLE_01" 因致命错误于 21:04:37 停止

 

[oracle@rhel6_lhrdbs]$ sqlplus / as sysdba

21:04:58SYS@orclasm > show parameter com

 

NAME                                 TYPE        VALUE

----------------------------------------------- ------------------------------

cell_offload_compaction              string      ADAPTIVE

commit_logging                       string

commit_point_strength                integer     1

commit_wait                          string

commit_write                         string

compatible                           string      11.2.0.3.0

nls_comp                            string      BINARY

plsql_v2_compatibility               boolean     FALSE

21:05:03SYS@orclasm >

 

解决办法:保持sourcetarget的版本一致,或source端小于等于target端,若版本一致,则修改target端的compatible参数和source端一致。

 

1.3.3  查看目标平台信息

[oracle@rhel6_lhrdbca]$ sqlplus / as sysdba

SYS@oraSKY> alter tablespace  TEST_USER1 readwrite;

 

表空间已更改。

 

SYS@oraSKY> alter tablespace  USERS read write;

 

表空间已更改。

 

SYS@oraSKY> alter tablespace  XPADDATA readwrite;

 

表空间已更改。

 

SYS@oraSKY> select tablespace_name,status from dba_tablespaces;

 

TABLESPACE_NAME                                             STATUS

------------------------------------------------------------------------------

SYSTEM                                                      ONLINE

SYSAUX                                                       ONLINE

UNDOTBS1                                                    ONLINE

TEMP                                                        ONLINE

USERS01                                                     ONLINE

EXAMPLE                                                      ONLINE

TEST_USER1                                                  ONLINE

USERS                                                       ONLINE

XPADDATA                                                    ONLINE

 

已选择9行。

 

1.4   导入完成后的结果校验

1.4.1  校验用户情况(密码、默认表空间、角色和权限,需迁移的schema对象大小、个数、列表)

1.4.1.1  校验用户

1.4.1.2  用户对象个数

1.4.1.3  对象详细信息

1.4.2  无效对象情况

1.4.3  索引情况

1.5  迁移后续收尾工作

确保数据已经完全迁移到新的主机上后,接下来就是一些琐碎的收尾工作,包括sys密码,监听,jobcrontab等等工作。

1.6  总结

到此所有的处理算是基本完毕,过程很简单,但是不同的场景处理方式有很多种,我们应该学会灵活变通。

本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用

ITPUB BLOGhttp://blog.itpub.net/26736162

本文地址:http://blog.itpub.net/26736162/viewspace-1987971/

本文pdf版:http://yunpan.cn/cdEQedhCs2kFz (提取码:ed9b) 

QQ:642808185 若加QQ请注明您所正在读的文章标题

于 2016-01-26 10:00~2016-02-06 19:00 在中行完成

你可能感兴趣的:(【TTS】基于RMAN迁移AIX平台数据库到Linux(第三篇))