数据库迁移:Linux-32到Linux-64(10.2.0.4)
一:环境说明
源库:
操作系统:LINUX 32位
数据库:Oracle 10.2.0.4.0 32位
目标库:
操作系统:LINUX 64位
数据库:ORACLE 10.2.0.4.0 64位
二:操作说明
使用RMAN跨平台传输
导出:
1. startup open read only;
2. 检查是否支持跨平台的转换
Set serveroutput on;
Declare
Db_ready Boolean;
Begin
Db_ready:=dbms_tdb.check_db('Linux x86 64-bit',2);
If(db_ready) then
Dbms_output.put_line('support');
Else
Dbms_output.put_line('nosupport');
End if;
End;
3. 检查是否存在外部对象
Declare
External Boolean;
Begin
External:=dbms_tdb.check_external;
End;
4. 在RMAN中执行整库转换
Convert database new database ‘MICSREGR’ --(在此设定实例名MICSREGR)
Transport script. ‘/u02/app/oracle/oradata/MICSREGR/rmandata/tsconv.sql’
To platform. ‘Linux x86 64-bit’
Db_file_name_convert ‘/u02/app/oracle/oradata/MICSREGR/’ ‘/u02/RMAN/a’;
注意报如下错误:/u02/app/oracle/oradata/MICSREGR/必须要加/,否则会报OMF错误。
/u02/RMAN/a必须要加a,用来和源库的OMF文件区分。
ORA-01276: Cannot add file/u02/app/oracle/oradata/MICSREGR/rmandata/o1_mf_system_4c720cx5_.dbf. File has an Oracle Managed Files file name.
5. 将数据库设置为read write
Startup open read write;