背景
生产数据库需要对全库数据进行清理。清理方案按如下步骤执行:一是将数据按用户方式导出,并放入开发环境进行清理;二是对生产环境进行全库备份,方式后续操作导致数据丢失;三是将清理后的数据重新导入到生产环境数据库。
操作过程
/按用户数据导出
./dexp userid=dmuser/***** file=exp_dmuser.dmp log=exp_dmuser.log directory=/dm8/backup owner=dmuser
/按用户数据导入
./dimp userid=dmuser/***** file=exp_dmuser.dmp log=imp_dmuser.log directory=/dm8/backup table_exists_action=replace
导入报错
由于生产环境包含要导入用户的所有表,因此在导入时使用table_exists_action=replace.
table_exists_action参数共有:1. SKIP 2.APPEND 3.TRUNCATE 4. REPLACE 选项
TABLE_EXISTS_ACTION 用于要导入的表已经存在时的处理方式。默认为直接报错。
语法如下:
TABLE_EXISTS_ACTION=[SKIP | APPEND | TRUNCATE | REPLACE]
- SKIP:跳过此表。
- APPEND:直接向现有表中导入数据
- TRUNCATE:先删除现有表中的数据,再向表中导入数据
- REPLACE:先删除现有表,再导数据
由于用户全部数据已经升级修改,此次导