dpOracle11 impdp:快速数据库迁移实施经验(oracle11 imp)
dpOracle11 impdp是用于从一个Oracle数据库(两个版本需保持一致)快速迁移数据库的一种工具,本文总结了其实施过程中的一些经验,以期达到更好的迁移效果。
### 一、准备阶段
1.首先要确定被迁移的源数据库(SOURCE_DATABASE)和目标数据库(TARGET_DATABASE);
2.检查源和目标的数据库版本是否一致,以保证迁移的兼容性;
3.在目标数据库上创建接收迁移数据存储的DATAPUMP目录(TARGET_DATAPUMP_DIRECTORY);
4.源数据库上创建迁移的表或完整数据库的迁移文件(SOURCE_EXPORT_FILE);
5.配置好参数以完成迁移,包括源数据库的用户名和密码(SOURCE_USER,SOURCE_PASSWORD)和目标数据库的用户(TARGET_USER)。
### 二、实施过程
1.执行impdp操作,在源数据库上执行语句:
expdp SOURCE_USER/SOURCE_PASSWORD dumpfile=SOURCE_EXPORT_FILE
2.用TARGET_USER打开目标数据库,在目标数据库执行语句:
impdp TARGET_USER/TARGET_PASSWORD directory=TARGET_DATAPUMP_DIRECTORY dumpfile=SOURCE_EXPORT_FILE
3.观察impdp执行过程,正确完成则显示”job has been successfully completed”,重新迁移时可加参数REMAP_SCHEMA=SOURCE_USER:TARGET_USER,该参数可将源数据库中的源用户名映射到目标数据库中的目标用户名;
4.检查迁移数据是否完整,该过程需使用DataPump视图,执行语句:
SELECT * FROM DBA_DATAPUMP_JOBS
### 三、优化
1.如果存在大量数据迁移,会花费较多的时间,可以适当增大参数PARALLEL的值,提升数据迁移的运行效率;
2.DataPump执行过程中,会产生大量日志文件,为减少磁盘空间的利用,可以执行清理日志的语句:
exec dbms_datapump.discard_stats (handle => job_handle);
3.impdp执行完成后,获取数据库统计信息:
exec dbms_stats.gather_schema_stats ('SCHEMA_NAME');
exec dbms_stats.gather_database_stats;
### 四、总结
dpOracle11 impdp工具可以比较快速地实现Oracle数据库的迁移,其实施过程要重点准备迁移配置参数,熟悉impdp实施过程,加大有效的参数值,清除日志,获取数据库统计信息,这样才可以有效率地实现Oracle数据库的迁移。