buhao 发表于 2018-9-15 06:15:19

Oracle 数据泵导入导出

  数据泵到导入导出,适用范围:11g不能导出空表,跨版本到导入导出
  公司192.168.3.60 数据库导出目录为shuju 目录在/u01/shuju
  select * from dba_directories
  1 创建导出导入目录(dba创建)
  先在导出的电脑上创建一个导出的存放目录如:D:\bak
  在数据库中创建导出导入的文件夹,并制定文件位置(位置就是上边创建的位置),这样sql就能操作这个目录了
  CREATE DIRECTORY bak AS '/u01/bak';
  如CREATE DIRECTORY bak as ‘D:\bak’;
  授权用户操作导入导出文件夹
  GRANT READ,WRITE ON DIRECTORY导入导出文件夹TO 用户名;
  如GRANT READ,WRITE ON DIRECTORY bak TO test;
  2 导出脚本
  expdp用户名/密码   directory=导出导入文件夹dumpfile= 导出文件名.dmplogfile=导出日志.logSCHEMAS=用户名 version =版本号
  注:
  directory=这些不能写路径,要写上边咱们创建的导出导入文件夹,文件就会直接导出到上边制定的目录
  version 版本号只要是实现不同版本直接的数据导入导出,如11.0.2..0.1 导入到10.2.0.1
  version=10.2.0.1这样11g导出的文件就能顺利导入到10g了。相同版本可以忽略
  如:expdp test/testdirectory= bakdumpfile= 备份.dmp logfile=备份.log SCHEMAS= test   version=11.2.0.1.0
  3导入脚本
  impdp 用户名/密码   directory=导出导入文件夹dumpfile= 导入文件名.dmplogfile=导入日志.log    REMAP_SCHEMA=导出用户名 :导入用户名
  REMAP_TABLESPACE=导出表空间:导入表空间 version=版本号
  注: REMAP_SCHEMA导出的用户名和导入的用户名不相同时用
  REMAP_SCHEMA把用户A的数据导入到用户BREMAP_SCHEMA=A:B
  REMAP_TABLESPACE和REMAP_SCHEMA功能一样只是REMAP_TABLESPACE实现了不同表空间的之间的导入导出
  导出导入文件夹 和导出一样的并且备份文件必须在指定的目录中
  如 到用户为test导入用户为ceshi导出表空间为A 导入表空间为B
  impdp test/ceshi directory= bakdumpfile=备份.dmpLOGFILE=导入.log REMAP_SCHEMA=test :ceshi REMAP_TABLESPACE= A:Bversion=11.2.0.1.0
  select * from dba_directories
  创建表空间,创建用户,赋予权限,把表空间赋予用户
  创建目录directory

页: [1]
查看完整版本: Oracle 数据泵导入导出