我们有2个当前的Oracle 10G(10.2.0.1)生产数据库,我们计划使用Oracle 12C迁移到新的数据库服务器。由于每个数据库的数据仅为5GB左右,因此创建新实例并使用数据泵传输数据的最佳方法。为此,我创建了一个从Oracle 12C数据库到10G的数据库链接,并用它来显示来自12C数据库的数据。但是,当我导入导出的数据时,我遇到了像这样的错误的表:
ORA-39083: Object type TABLE:"USER"."WH_SEARCH_ACT" failed to create with error:
ORA-00406: COMPATIBLE parameter needs to be 12.2.0.0.0 or greater
ORA-00722: Feature "Partition Read Only"
除了在生产数据库中添加COMPATIBLE参数之外,还有其他解决方案吗?这是生产,所以我不能真正更新/修改当前的生产数据库。这里有任何其他解决方案,因为我不喜欢在导入数据泵文件之前创建表。
答案 0 :(得分:2)
使用数据泵实用程序中的version参数。例如:
expdp hr/hr TABLES=hr.employees VERSION=10.2
DIRECTORY=data_pump_dir DUMPFILE=emp10g.dmp LOGFILE=emp.log
只需确保导出实用程序的版本为10g,导入实用程序为12G。希望这会有所帮助。
答案 1 :(得分:0)
在生产数据库中。你可以使用exp程序
exp username/password buffer=64000 file=/path/to/path.dmp full=y
将exp转储文件复制到oracle 12c并使用
imp username/password buffer=64000 file=/path/to/path.dmp full=y