Expdp导出分区表的数据文件再Impdp导入到没分区的表的操作方法
Article_Detail是个按时间的分区表:
导出的Bat如下:假设这个表有四个分区,且每个分区的NUM_ROWs至少有20万记录,导出参数tables=Article_Detail 表示每个分区都会导出20万条记录,实则导出的记录为80万。
expdp test/1234@orcl_test query=article_detail:\"where rownum<=200000 order by Article_Detail_ID desc\" tables=Article_Detail directory=TEST_DUMP_DIR dumpfile=Article_Detail_20W.dmp logfile=Article_Detail_20W.log compression=DATA_ONLY content=DATA_ONLY parallel=2
导入:从分区表导出的文件里导入到非分区表,在导入的批处理里要有partition_options参数,partition_options=merge表示将四个分区的数据合并在一起。因为分区表中对应多个表空间,所以要remap_tablespace一下,导入脚本如下:
impdp test_2/1234@orcl_test2 directory=TEST_DUMP_DIR remap_schema=test:test_2 dumpfile=Article_Detail_20W.dmp logfile=Impdp_Article_Detail_20W.log table_exists_action=APPEND data_options=SKIP_CONSTRAINT_ERRORS parallel=2 Exclude=Trigger partition_options=merge