Oracle expdp impdp命令详解与常用参数

需积分: 35 6 下载量 171 浏览量 更新于2024-07-24 1 收藏 108KB DOC 举报
Oracle的expdp和impdp是Oracle数据库的两个关键工具,它们分别用于数据的导出和导入操作,是数据迁移、备份和恢复过程中的重要环节。以下是关于这两个命令的详细使用总结。 首先,使用expdp(Export Data Pump)进行数据导出时,必须在目标数据库中预先设置一个目录(directory)。例如,你可以使用以下SQL语句创建一个名为dmpdir的目录,并授予测试用户读写权限: ```sql CREATE DIRECTORY dmpdir AS '/u01/dmdir'; GRANT READ, WRITE ON DIRECTORY dmpdir TO test; ``` 接下来,是常见的导出命令格式: 1. 基础导出: - `$expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=test` - 这个命令将导出用户scott下的test schema的所有对象到名为scott.dmp的文件中。 2. 选择性导出: - `$expdp scott/tiger DUMPFILE=tmp_dump.dmp DIRECTORY=dmpdir TABLES=(tmp_test:p1,tmp_test:p2)` - 只导出指定的表tmp_test中的p1和p2字段。 3. 定期导出: - `$expdp scott/tiger DUMPFILE=full.dmp DIRECTORY=dmpdir FULL=Y JOB_NAME=full` - 全库导出,使用FULL参数,创建名为full.dmp的文件。 4. 条件筛选导出: - `$expdp scott/tiger DUMPFILE=tmp_200703.dmp DIRECTORY=dmpdir TABLES=tmp QUERY=\"where to_char(create_time,'yyyy-mm-dd') < '2007-04'\"` - 只导出create_time小于2007年4月的记录。 expdp的一些关键参数解释: - SCOTT/TIGER: 用户名和密码,用于身份验证。 - DUMPFILE: 导出文件的名称,存储在服务器端指定目录。 - DIRECTORY: 存放导出文件的位置。 - CONTENT: 可选参数,可以选择导出DATA_ONLY(仅数据)、METADATA_ONLY(仅元数据)或ALL(默认,两者都有)。 - FILESIZE: 指定导出文件的最大大小。 - JOB_NAME: 任务名称,用于跟踪导出操作。 - LOGFILE: 日志文件的名称。 - INCLUDE/EXCLUDE: 分别表示包含和排除特定类型的导出数据,如只导出某个表的数据(INCLUDE)或排除某表(EXCLUDE)。 - FULL: 当导出整个数据库时,设置为Y表示全量导出,默认为N。 - SCHEMA: 导出指定schema下的数据。 - TABLES: 按照指定的表名进行导出。 expdp和impdp是Oracle数据库高效的数据迁移工具,通过灵活的参数配置,可以实现高效、精准的数据导出和导入。熟练掌握这两个命令及其参数使用,对数据库管理员和开发人员来说至关重要。在实际操作中,根据需求选择合适的参数组合,能够确保数据迁移的安全性和完整性。