加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle 11g r2 使用Data dump 从CentOS 迁移到Window 10

发布时间:2020-12-12 14:19:17 所属栏目:百科 来源:网络整理
导读:1 ****全库Expdp导出,再全库Impdp导入** ** 1 2 3 4 5 源系统:操作系统:CentOSOracle数据库版本:Oracle11g Enterprise Edition Release 11.2 .0 .1 .0 SID:orcl端口: 1521 5 目标系统: 操作系统:Windows 10 Oracle数据库版本:Oracle11g Enterprise E
 
 
  • 1
****全库Expdp导出,再全库Impdp导入****
1
  
  
  • 2
  • 3
  • 4
  • 5
  • 源系统: 操作系统:CentOS Oracle数据库版本:Oracle11g Enterprise Edition Release 11.2.0.1.0 SID:orcl 端口:1521
     
     
      5
    目标系统: 操作系统:Windows 10 Oracle数据库版本:Oracle11g Enterprise Edition Release 11.2.0.1.0 SID:orcl 端口:1521

    源系统和目标系统都建立账号

    2
     
     create user username identified by password;
    grant connect,resoure to username;

    赋予expdp和impdp命令权限:

    1
     
     grant exp_full_database,imp_full_database to username;
    2
     
     SQL> create user migrate identified by migrate;
    User created
    2
     
     SQL> grant connect,resource,dba to migrate;
    Grant succeeded
    2
     
     SQL> grant exp_full_database,153)">5
      
      
  • 6
  • SQL> select * from dba_directories; OWNER DIRECTORY_NAME DIRECTORY_PATH -- - SYS ORACLE_OCM_CONFIG_DIR /oracle/app/product/11.20/dbhome_1/ccr/state DATA_PUMP_DIR /oracle/app/admin/orcl/dpdump/ XMLDIR /ade/b/2125410156/oracle/rdbms/xml

    Step 1: 在源系统上创建目录

    create directory DPDMP as '/oracle/app/admin/orcl/dpdmp/'; --该目录必须是已经存在的目录(该目录应该用oracle用户创建),否则会报错
    6
      
      
  • 7
  • DPDMP /oracle/app/admin/orcl/dpdmp/ /ade/b/2125410156/oracle/rdbms/xml

    Step 2: 赋予账号对该目录的权限

    read,write on directory DPDMP to username;

    Step 3: 在源系统端expdp(基于某个用户)

    expdp username/password@orcl directory= DPDMP dumpfile=XX_schema%U.dmp logfile=XX_schema.log schemas=XX_schema
    或者导出整个库:
    expdp username/password@orcl directory= DPDMP dumpfile=all%U.dmp logfile=XX_schema.log parallel=10 full=y

    Step 4:将源系统的directory/XX_schema%U.dmp文件拷贝到目标系统

    这步骤省略

    Step 5: 在目标系统上创建目录

    1
     
     create directory DPDMP as 'E:oracleappAdministratoradminorcldpdmp'; --该目录必须是已经存在的目录,否则会报错

    Step 6: 赋予权限

    on directory impdp to username;

    Step 7: 在目标系统端impdp

    7
      
      
  • 8
  • 9
  • impdp username/password@orcl directory= DPDMP dumpfile=XX_schema%U.dmp logfile=XX_schema.log schemas=XX_schema 或导入整个库: impdp username/password@orcl directory= DPDMP dumpfile=all%U.dmp logfile=XX_schema.log parallel=10 full=y impdp migrate/migrate@orcl directory=dpdmp dumpfile=migrate_full.dmp logfile=migrate_imp_full.log full=y parfile=e:payroll.par parallel=10 payroll.par放到directory impdp目录下或放到E盘根目录: payroll.par文件内容 remap_datafile="'/oracle/app/oradata/orcl/XXX.dbf':'E:ORACLEAPPADMINISTRATORORADATAORCLXXX.DBF'" remap_datafile="'/oracle/app/oradata/orcl/XXX.dbf':'E:XXX.DBF'"

    > 以下为迁移中可能使用到

    • 如果需要从linux到window的导入导出,最好是先创建表空间及数据文件
      表空间DDL:
    select ts.tablespace_name,to_char(dbms_metadata.get_DDl('TABLESPACE',ts.tablespace_name))from dba_tablespaces ts;
    • 用户DDL:
    select username,default_tablespace,temporary_tablespace,profile,dbms_metadata.get_DDl('USER',username) from dba_users where account_status='OPEN' ;
    • 记录数:
    select table_name,count_rows(table_name) nrows from user_tables ;
    • 查看当前导入的job :
    select * from dba_datapump_jobs;
    • 如果impdp过程中异常退出后,要从中断处继续导入执行如下:

      impdp migrate/migrate@orcl attach=JOB_NAME (JOB_NAME可以通过dba_datapump_jobs来查询)
      比如:> impdp mig_test/mig_test attach=SYS_IMPORT_TABLE_02

      Import status/continue_client 返回记录模式/stop_job YES/
      交互模式常用命令:
      CONTINUE_CLIENT返回到记录模式。假如处于空闲状态,将重新启动作业。
      START_JOB 启动恢复当前作业。
      STATUS在默认值 (0) 将显示可用时的新状态的情况下,要监视的频率 (以秒计) 作业状态。
      STATUS=[interval]
      STOP_JOB顺序关闭执行的作业并退出客户机。
      STOP_JOB=IMMEDIATE 将立即关闭数据泵作业。

    • 如果全库导入的时候会暂停卡在那里

      可以查diagrdbmsorclorcltracealert_orcl.log查看日志,针对当前问题解决掉后,impdp会继续
      如果是ORA-19815: WARNING: db_recovery_file_dest_size of 4039114752 bytes is 100.00% used,and has 0 remaining bytes available.
      就需要将db_recovery_file_dest_size调大:

    8
     
     SQL> alter system set db_recovery_file_dest_size=50G scope=spfile(需要重启数据库生效)
     SQL> shutdown immediate;
     SQL> startup;
     SQL> show parameter db_recovery_file_dest
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    db_recovery_file_dest                string      E:flash_recovery_area
    db_recovery_file_dest_size           big integer 50G

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读