隨筆 - 0, 文章 - 3, 評論 - 0, 引用 - 0
          數據加載中……

          Oracle: EXP-00091 的三種解決方法

             
          EXP-00091”問題是exp工具所在的環境變量(系統屬性->高級->環境變量)
          中的NLS_LANG與DB中的NLS_CHARACTERSET不一致導致的。

          解決方法一:
          Windows:
          ⑴ 我們來查看DB中的NLS_CHARACTERSET的值(數據庫中的NLS_LANG):
          [sql] 
          select * from nls_database_parameters t where t.parameter='NLS_CHARACTERSET';  
           or:
          [sql] 
          select * from v$nls_parameters  where parameter='NLS_CHARACTERSET';  
          ⑵ 查看環境變量中的NLS_LANG:
          運行命令行中輸入:
          regedit -> HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOMExx/,
          xx指存在多個ORACLE_HOME時系統編號。


          3)如果DB中NLS_LANG 和exp中環境變量確實不一樣,那么就會導致剛剛的問題。
          Windows 中直接修改注冊表中的NLS_LANG值,就可以了,請以DB中查詢出來的NLS_LANG為準。
          補充
          1)查看環境變量中的NLS_LANG:
          [oracle@MWSG1: ~]$echo $NLS_LANG
           
          2) 根據⑴查出的NLS_CHARACTERSET 來設定exp的環境變量:
          WINNT> set NLS_LANG=AMERICAN_AMERICA.AL32UTF8
          [oracle@MWSG1: ~]$export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
          [oracle@MWSG1: ~]$echo $NLS_LANG
          AMERICAN_AMERICA.AL32UTF8

          解決方法二:

          第一步: 查看DB中的NLS_CHARACTERSET的值(提供兩種方法):

          查詢NLS_CHARACTERSET的值:
          select * from nls_database_parameters t where t.parameter='NLS_CHARACTERSET';
          or
          select * from v$nls_parameters  where parameter='NLS_CHARACTERSET';
          SQL> select * from v$nls_parameters where parameter='NLS_CHARACTERSET';

          PARAMETER          VALUE
          -----------------------  ----------------------------------------------
          NLS_CHARACTERSET    ZHT16BIG5

          第二步: 根據第一步查出的NLS_CHARACTERSET(ZHT16BIG5)來設定exp的環境變量:
          WINNT> set NLS_LANG=AMERICAN_AMERICA.ZHT16BIG5

          進行設定后,在環境變量中查看NLS_LANG的值是否一致,如果不一致可在環境變量中手中修改。
          LINUX> export NLS_LANG=AMERICAN_AMERICA.ZHT16BIG5


          解決方法三:
          (1).我按照第一種方法查到結果:
          SQL> select * from v$nls_parameters where parameter='NLS_CHARACTERSET';
          PARAMETER          VALUE
          -----------------------  -------------------------------------------
          NLS_CHARACTERSET    AL32UTF8
          但是在進行第二步時在注冊表的HKEY_LOCAL_MACHINE/SOFTWARE/下沒有發現ORACLE目錄,第一種方法解決不了我的問題。
          (2).按照第二種方法時在cmd中輸入 set NLS_LANG=AMERICAN_AMERICA.AL32UTF8 時報錯。
          (3).于是我在系統屬性->高級->環境變量中發現變量 NLS_LANG = ZHS16GBK,直接把值改成AL32UTF8后,
          從數據庫中導出.dmp文件還是會報錯。后來我沒有改動以前那個
          NLS_LANG = ZHS16GBK,只是又增加了一個
          NLS_LANG = AL32UTF8,結果證明我可以從數據庫正常導出(exp).dmp文件了。后來發現,原本變量中有兩個NLS_LANG的,
          但結果變成了一個:
          NLS_LANG = AL32UTF8,說明已經把系統中的NLS_LANG改成與數據庫中的NLS_LANG相同了。

          posted on 2013-05-17 21:58 MingLiang 閱讀(321) 評論(0)  編輯  收藏 所屬分類: Oracle技術


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 习水县| 卫辉市| 墨竹工卡县| 壶关县| 铁岭市| 郑州市| 会东县| 台北县| 苗栗市| 筠连县| 兴海县| 朔州市| 宜兰县| 哈密市| 墨竹工卡县| 大港区| 花莲市| 新竹县| 三亚市| 天等县| 沐川县| 自贡市| 樟树市| 玛纳斯县| 个旧市| 陆丰市| 潞城市| 林芝县| 武乡县| 南部县| 广西| 萝北县| 沅江市| 永昌县| 神池县| 鄱阳县| 英德市| 达州市| 天等县| 安岳县| 治县。|