zoukankan      html  css  js  c++  java
  • oracle导出与导入脚本

    导出

    导出指定用户下的所有表

    # 环境变量设置
    export ORACLE_SID=bdyz
    export ORACLE_BASE=/u01/oracle11g_R2
    export ORACLE_HOME=$ORACLE_BASE/11g
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib
    export NLS_LANG="simplified chinese"_china.zhs16gbk;
    export PATH=$PATH:$ORACLE_HOME/bin
    rq=$(date +%Y%m%d)
    user_name='lltf'
    user_passwd='lltf_2017'
    bak_dir=/u01/oradata/${user_name}/$rq
    if [ ! -s $bak_dir ];then
            mkdir -p $bak_dir
    fi
    #建立备份目录并授权给用户
    sqlplus / as sysdba <<EOF
    drop directory dump_dir;
    create directory dump_dir as '${bak_dir}';
    grant read,write on directory dump_dir to ${user_name};
    quit
    EOF
    expdp ${user_name}/${user_passwd} directory=dump_dir dumpfile=${user_name}_%U.dmp schemas=${user_name} logfile=${user_name}_${rq}_exp.log compression=ALL   filesize=1g parallel=8 
    

    导出指定用户下的指定表

    #!/bin/sh
    export ORACLE_SID=ldb1
    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=$ORACLE_BASE/11.2.0/db_1
    export PATH=${PATH}:$ORACLE_HOME/bin
    
    bak_dir='/home/oracle/lxm/meituan/data_of_tables_need_compare_module'
    user_name='ldb'
    user_passwd='ldb'
    
    sqlplus / as sysdba <<EOF
    drop directory dump_dir;
    create directory dump_dir as '${bak_dir}';
    grant read,write on directory dump_dir to ${user_name};
    quit
    EOF
    expdp ${user_name}/${user_passwd}  TABLES=${user_name}.t_sof_subscriber,${user_name}.t_subscriber_import_task,${user_name}.t_as,${user_name}.t_subscriber,${user_name}.T_SMB_MSISDN directory=dump_dir dumpfile=${user_name}_%U.dmp  compression=ALL   filesize=1g parallel=8 

    导入

    #!/bin/sh
    . ~/.bash_profile
    
    bak_dir='/home/oracle/lxm/meituan/data_of_tables_need_compare_module'
    exp_user_name='ldb'
    exp_tablespace='LDB_DATA'
    exp_index_tablespace='LDB_INDEX'
    current_tablespace='USERS'
    user_name='test'
    user_passwd='test'
    
    
    sqlplus / as sysdba <<EOF
    drop directory exp_dir;
    create directory exp_dir as '${bak_dir}';
    grant read,write on directory exp_dir to ${user_name};
    quit
    EOF
    
    impdp ${user_name}/${user_passwd} PARALLEL=8 cluster=no dumpfile=${exp_user_name}_%U.dmp   directory=exp_dir REMAP_TABLESPACE=${exp_tablespace}:${current_tablespace},${exp_index_tablespace}:${current_tablespace} REMAP_SCHEMA=${exp_user_name}:${user_name} TABLE_EXISTS_ACTION=truncate 
    # 开始没加这句导致导入中出现错误${exp_index_tablespace}:${user_name} 
    # 如果源库与目标库的数据表空间(索引表空间)一样那么就不需要使用REMAP_TABLESPACE进行映射;
  • 相关阅读:
    布局重用 include merge ViewStub
    AS 常用插件 MD
    AS 2.0新功能 Instant Run
    AS .ignore插件 忽略文件
    AS Gradle构建工具与Android plugin插件【大全】
    如何开通www国际域名个人网站
    倒计时实现方案总结 Timer Handler
    AS 进行单元测试
    RxJava 设计理念 观察者模式 Observable lambdas MD
    retrofit okhttp RxJava bk Gson Lambda 综合示例【配置】
  • 原文地址:https://www.cnblogs.com/yldf/p/11900103.html
Copyright © 2011-2022 走看看