在Ubuntu上迁移Oracle数据库常用方法及步骤如下:
sqlplus / as sysdba
CREATE OR REPLACE DIRECTORY tmpDir AS '/path/to/source_dir';
expdp username/password@source_db DIRECTORY=tmpDir DUMPFILE=export.dmp LOGFILE=export.log FULL=Y
scp /path/to/source_dir/export.dmp user@target_ubuntu:/path/to/target_dir
sqlplus / as sysdba
CREATE OR REPLACE DIRECTORY tmpDir AS '/path/to/target_dir';
impdp username/password@target_db DIRECTORY=tmpDir DUMPFILE=export.dmp LOGFILE=import.log
说明:支持全库或表空间级迁移,可通过PARALLEL
参数加速。
rman target /
BACKUP DATAFILE '/path/to/source/datafile.dbf' TO '/path/to/backup/datafile.dbf';
scp /path/to/backup/datafile.dbf user@target_ubuntu:/path/to/target_dir
rman target /
RESTORE DATAFILE '/path/to/target/datafile.dbf' FROM '/path/to/backup/datafile.dbf';
SWITCH DATAFILE '/path/to/target/datafile.dbf';
ALTER DATABASE RENAME FILE '/old/path/datafile.dbf' TO '/new/path/datafile.dbf';
说明:适用于不同操作系统间迁移,需确保字节序一致,可通过RMAN CONVERT
转换。
CREATE DIRECTORY
、EXPDP/IMPDP
权限。SELECT * FROM NLS_DATABASE_PARAMETERS
检查。DBMS_COMPARISON
工具或自定义脚本校验。参考来源: