Oracle 11g及以上版本提供了数据泵技术,可以用来进行数据库的逻辑备份和恢复,Oracle建议使用数据泵来代替EXP和IMP技术。数据泵技术基于Oracle数据库服务器,导入导出的数据文件也保存在数据库服务器端,而EXP/IMP基于客户机运行。利用数据泵技术,Oracle要求必须使用目录对象,以防止用户误操作服务器上特定目录下的操作系统文件。


EXPDP导出命令参数介绍:

  1. directory :指定转储文件和日志文件所在的目录
    DIRECTORY=directory_object
    Directory_object用于指定目录对象名称.需要注意,目录对象是使用CREATE DIRECTORY语句建立的对象,
      create directory dir_dp as 'E:/dir_dp';

2.content :该选项用于指定要导出的内容.默认值为ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
当设置CONTENT为ALL时,将导出对象定义及其所有数据;
为DATA_ONLY时,只导出对象数据,
为METADATA_ONLY时,只导出对象定义;

-- 只导出对象定义
expdp keyangsale/keyangsale@xyyc_ims tablespaces = users directory=dir_dp dumpfile=xyyc_ims.dmp  logfile=xyyc_ims_log.log content=metadata_only;

-- 导出数据
expdp keyangsale/keyangsale@xyyc_ims tablespaces = users directory=dir_dp dumpfile=xyyc_ims.dmp  logfile=xyyc_ims_log.log content=data_only;
  1. DUMPFILE :用于指定转储文件的名称,默认名称为expdat.dmp
    DUMPFILE=[directory_object:]file_name [,….]
    Directory_object用于指定目录对象名,file_name用于指定转储文件名.需要注意,如果不指定directory_object,导出工具会自动使用DIRECTORY选项指定的目录对象。

数据泵导出expdp的步骤(示例):
1.创建directory

create directory dir_dp as 'E:/dir_dp';

2.在directory指定的路径(例如:E:/dir_dp)下创建文件夹;
3.授权

grant read,write on directory dir_dp to keyangsale;

4.使用expdp命令导出

expdp keyangsale/keyangsale@xyyc_ims tablespaces = users directory=dir_dp dumpfile=xyyc_ims.dmp  logfile=xyyc_ims_log.log;

数据泵导出的各种模式:
1.按表模式导出

expdp keyangsale/keyangsale@xyyc_ims  directory=dir_dp dumpfile=xyyc_ims.dmp logfile=xyyc_ims_log.log tables=keyangsale.LM_ITCM_CATEGORY,keyangsale.LM_SALES_RECORDS;

2.按查询条件导出

expdp keyangsale/keyangsale@xyyc_ims directory=dir_dp dumpfile=xyyc_ims.dmp logfile=xyyc_ims_log.log tables=keyangsale.LM_ITCM_CATEGORY 
query='"where rownum<11"'

3.按表空间导出

expdp keyangsale/keyangsale@xyyc_ims tablespaces = users directory=dir_dp dumpfile=xyyc_ims.dmp  logfile=xyyc_ims_log.log;

4.导出整个数据库:

expdp keyangsale/keyangsale@xyyc_ims tablespaces = users directory=dir_dp dumpfile=xyyc_ims.dmp  logfile=xyyc_ims_log.log full=y;
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐