一、数据导出
创建目录对象:
CREATE DIRECTORY dpump_dir AS '/path/to/your/directory';
授予权限:
GRANT READ, WRITE ON DIRECTORY dpump_dir TO test_user; #导出的用户
导出全库数据
expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=full_export.dmp LOGFILE=full_export.log FULL=y
导出指定用户数据
expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=user_export.dmp LOGFILE=user_export.log SCHEMAS=your_schema
导出特定表
expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=table_export.dmp LOGFILE=table_export.log TABLES=your_schema.your_table
二、数据导入
导入全库数据
步骤:
创建目录对象(如上步骤)。
授予权限(如上步骤)。
执行全库导入:
impdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=full_export.dmp LOGFILE=full_import.log FULL=y
- 导入指定用户数据
步骤:
创建目录对象(如上步骤)。
授予权限(如上步骤)。
执行指定用户数据导入:
impdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=user_export.dmp LOGFILE=user_import.log SCHEMAS=your_schema
- 导入指定表
步骤:
创建目录对象(如上步骤)。
授予权限(如上步骤)。
执行指定表导入:
impdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=table_export.dmp LOGFILE=table_import.log TABLES=your_schema.your_table
三、其他重要选项
压缩导出文件(例如使用 gzip):
expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=full_export.dmp LOGFILE=full_export.log FULL=y COMPRESSION=ALL
只导出数据而不导出表结构:
expdp your_user/your_password DIRECTORY=dpump_dir DUMPFILE=data_only_export.dmp LOGFILE=data_only_export.log TABLES=your_schema.your_table CONTENT=DATA_ONLY
六、监控和日志
查看导出和导入的日志文件,可以帮助你排查问题:
tail -f /path/to/your/directory/full_export.log
tail -f /path/to/your/directory/full_import.log
imp username/password@database file=dump_file.dmp full=y ignore=y
ignore=y #导入的时候忽略报错