数据库传输
数据库传输的两种主要方法:
-
在源系统转换数据库格式:
- 将数据库打开为只读模式。
- 使用RMAN将数据库转换为目标平台格式。
- 将转换后的文件传输到目标系统。
- 在目标系统上打开数据库。
-
在目标系统转换数据库格式:
- 将数据库打开为只读模式。
- 将源系统的文件传输到目标系统。
- 在目标系统上使用RMAN将数据库转换为目标平台格式。
- 在目标系统上打开数据库。
Oracle 数据库跨平台迁移详细示例
在源系统转换数据库格式
步骤1:将数据库打开为只读模式。
SQL> startup mount;
SQL> alter database open read only;
步骤2:使用RMAN将数据库转换为目标平台格式。
首先,需要检查数据库是否可以转换:
SQL> SET SERVEROUTPUT ON;
SQL> DECLARE
db_ready BOOLEAN;
BEGIN
db_ready := DBMS_TDB.CHECK_DB('Microsoft Windows IA (32-bit)');
END;
/
然后,使用RMAN进行转换:
$ rman target /
RMAN> CONVERT DATABASE
NEW DATABASE 'newdb'
TO PLATFORM 'Microsoft Windows IA (32-bit)'
FORMAT '/tmp/%U';
步骤3:将转换后的文件传输到目标系统。
# 使用scp命令将文件从源系统传输到目标系统
$ scp /tmp/* user@target-system:/target-directory
步骤4:在目标系统上打开数据库。
在目标系统上执行以下步骤:
$ sqlplus / as sysdba
SQL> startup nomount;
SQL> @/target-directory/crdb.sql
在目标系统转换数据库格式
步骤1:将数据库打开为只读模式。
在源系统上将数据库打开为只读模式:
SQL> startup mount;
SQL> alter database open read only;
步骤2:将源系统的文件传输到目标系统。
使用scp命令将文件从源系统传输到目标系统:
# 在源系统上执行
$ scp /source-directory/* user@target-system:/target-directory
步骤3:在目标系统上使用RMAN将数据库转换为目标平台格式。
首先,在目标系统上连接RMAN:
$ rman target /
然后,使用RMAN进行转换:
RMAN> C