Oracle dmp的imp和exp

 一.EXP操作

     exp作业会影响DB Server日常操作,因此在非高峰期进行操作。

    1.为了保证汇出的资料不出现乱码,因此我们要保证client的编码和DB server端保持一致。我们要查询server端NLS_LANG 和NLS_NCHAR_CHARACTERSET,具体sql代码如下:

SELECT   a.VALUE || '_' || b.VALUE || '.' || c.VALUE AS NLS_LANG,

         d.VALUE AS NLS_NCHAR_CHARACTERSET

  FROM   (SELECT   VALUE

            FROM   NLS_DATABASE_PARAMETERS

           WHERE   parameter = 'NLS_LANGUAGE') a,

         (SELECT   VALUE

            FROM   NLS_DATABASE_PARAMETERS

           WHERE   parameter = 'NLS_TERRITORY') b,

         (SELECT   VALUE

            FROM   NLS_DATABASE_PARAMETERS

           WHERE   parameter = 'NLS_CHARACTERSET') c,

         (SELECT   VALUE

            FROM   NLS_DATABASE_PARAMETERS

           WHERE   parameter = 'NLS_NCHAR_CHARACTERSET') d

得到:NLS_LANG 和NLS_NCHAR_CHARACTERSET的server值。

   2.在本机DOS命令环境下,设置上面查询的结果。

    cmd->cd\->set NLS_LANG =''->set NLS_NCHAR_CHARACTERSET=''.

   3.export server DB资料

      C:\>exp 账户/密码@severDB OWNER=用户 file=d:\名字.dump log=d:\explogs.log

      检查log是否正常.

二.imp操作

   导入本机时候要确认网络连接是否后server无关后在import到本机DB资料

   1.利用上面的sql确定本机db NLS_LANG和NLS_NCHAR_CHARACTERSET是否与Server端一致

   2.C:\>imp 账户/密码@clientDB  fromuser=用户  touser=用户  file=d:\名字.dump  log=d:\implogs.log

   3.检查log是否正常

三.检查是否有invalid,虽然log无异常,不代表汇入动作完全没有异常

   1.刚汇入的时候执行下面的sql   

       begin

            DBMS_UTILITY.compile_schema(‘tooling’,true);

         end;

         /

    2.检查invalid的方法     

 SELECT   object_name,object_type,

             LAST_DDL_TIME,object_id

    FROM   user_objects

    WHERE   status <> 'VALID'

UNION

SELECT  

         object_name,object_type,

         LAST_DDL_TIME,object_id

  FROM   user_objects

 WHERE   object_type = 'INDEX'

         AND object_name IN

         (SELECT   index_name

                 FROM   user_indexes

                    WHERE   status = 'UNUSABLE'

                   UNION

                   SELECT   index_name

                     FROM   user_ind_partitions

                    WHERE   status = 'UNUSABLE'

                   UNION

                   SELECT   index_name

                     FROM   user_ind_subpartitions

                    WHERE   status = 'UNUSABLE')

 

 

 

   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值