sunfruit[請訪問http://www.fruitres.cn]

          --我相信JAVA能走得更遠 QQ:316228067

          2008年9月12日 #

          Linux Enterprise 5 安裝Oracle出現ins_rdbms.mk錯誤的解決辦法

              --sunfruit

              在Linux Enterprise 5安裝Oracle的時候有時候會報錯例如“makefile '/oracle/product/10.2.0/db_1/rdbms/lib/ins_rdbms.mk' 的目標 'all_no_orcl' 時出錯”

              經過多次測試是缺少相關的系統包文件,至少我的環境中確實是這樣,只要是安裝了下面的包文件,這個錯誤可以避免(版本號在不同環境中略有不同)

              compat-libstdc++-33-3.2.3-61
              compat-libstdc++-296-2.96-138
              gcc-4.1.1-52.el5
              gcc-c++-4.1.1-52.el5
              glibc-2.5-12
              glibc-common-2.5-12
              glibc-devel-2.5-12
              glibc-headers-2.5-12
              libgcc-4.1.1-52.el5
              make-3.81-1.1
              binutils-2.17.50.0.6-2.el5
              openmotif-2.3.0-0.3.el5

              以上的安裝包由于在安裝Linux的選擇的包以及具體的環境不同可能,可能有些不需要,不過如果出現了ins_rdbms.mk的錯誤,可以按照這個方法嘗試一下

              注:以上的安裝在Linux Enterprise 5的安裝盤中都包含,不需要額外在網上下載

          posted @ 2008-09-12 09:18 sunfruit 閱讀(5428) | 評論 (1)編輯 收藏

          Linux Enterprise 5安裝Oracle10g,Oracle10g字符集設置問題

              -sunfruit

              如果在安裝Oracle10g的時候沒有選擇字符集,則按照下面的3部進行字符集的修改就可以完全正常的使用Oracle10g(注:關于下面的1、2、3均是轉貼,后面添加了個人在使用的時候一些心得)
             

          1、檢查服務器上Oracle數據庫的字符集   
              sqlplus /nolog
            SQL>  connect / as sysdba
            連接成功.   
             
            SQL>  desc  props$   
              列名                                                    可空值否      類型   
              -------------------------------  --------  ----   
              NAME                                                        NOT  NULL  VARCHAR2(30)   
              VALUE$                                                                      VARCHAR2(2000)   
              COMMENT$                                                                  VARCHAR2(2000)   
             
            SQL>  col  value$  format  a40   
            SQL>  select  name,value$  from  props$;   
             
            NAME                                                      VALUE$   
            ------------------------------  -------------------------   
            DICT.BASE                                            2   
            NLS_LANGUAGE                                      AMERICAN   
            NLS_TERRITORY                                    AMERICA   
            NLS_CURRENCY                                      $   
            NLS_ISO_CURRENCY                              AMERICA   
            NLS_NUMERIC_CHARACTERS                  .,   
            NLS_DATE_FORMAT                                DD-MON-YY   
            NLS_DATE_LANGUAGE                            AMERICAN   
            NLS_CHARACTERSET                              ZHS16GBK   
            NLS_SORT                                              BINARY   
            NLS_CALENDAR                                      GREGORIAN   
            NLS_RDBMS_VERSION                            7.3.4.0.0   
            GLOBAL_DB_NAME                                  ORACLE.WORLD   
            EXPORT_VIEWS_VERSION                      3   
             
             
             
            NLS_CHARACTERSET和NLS_CHAR_CTERSET這個參數應該是ZHS16GBK,如不是,改為它。   
             
            SQL*Plus中修改方法:   
            SQL>  update  props$  set  value$='ZHS16GBK'  where  name='NLS_CHARACTERSET'; 


          2、確認字符集是否修改的不徹底。
            SELECT DISTINCT (NLS_CHARSET_NAME(CHARSETID)) CHARACTERSET,
            DECODE(TYPE#, 1,
            DECODE(CHARSETFORM, 1, 'VARCHAR2', 2, 'NVARCHAR2', 'UNKOWN'),
            9,
            DECODE(CHARSETFORM, 1, 'VARCHAR', 2, 'NCHAR VARYING', 'UNKOWN'),
            96,
            DECODE(CHARSETFORM, 1, 'CHAR', 2, 'NCHAR', 'UNKOWN'),
            112,
            DECODE(CHARSETFORM, 1, 'CLOB', 2, 'NCLOB', 'UNKOWN')) TYPES_USED_IN
            FROM SYS.COL$
            WHERE CHARSETFORM IN (1, 2)
            AND TYPE# IN (1, 9, 96, 112);

          3、如果上面的查詢的確顯示有多個字符集的設定,則進行如下處理:
            SHUTDOWN IMMEDIATE;
            STARTUP MOUNT;
            ALTER SYSTEM ENABLE RESTRICTED SESSION;
            ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
            ALTER SYSTEM SET AQ_TM_PROCESSES=0;
            ALTER DATABASE OPEN;

            COL VALUE NEW_VALUE CHARSET
            SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER='NLS_CHARACTERSET';
            COL VALUE NEW_VALUE NCHARSET
            SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER='NLS_NCHAR_CHARACTERSET';

            --INTERNAL_USE是沒有寫在文檔中的參數,用以強制完成字符集一致化
            ALTER DATABASE CHARACTER SET INTERNAL_USE &CHARSET;
            ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCHARSET;

            SHUTDOWN IMMEDIATE;
            STARTUP;
            -- 再次啟動數據庫一遍
            SHUTDOWN IMMEDIATE;
            STARTUP;

          **************注意****************
          本人在使用上面的方法設置以后Oracle10g可以正常使用,在導入dmp,sql文件的時候則需要在Linux中做如下設置
          sql文件,dmp文件在導入oracle的時候需要設置字符集

          export LANG=zh_CN.GBK    //這個是linux的字符集設置
          export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK   //這個是oracle的字符集設置

          posted @ 2008-09-12 09:09 sunfruit 閱讀(2321) | 評論 (0)編輯 收藏

          主站蜘蛛池模板: 中山市| 太保市| 醴陵市| 剑川县| 岱山县| 平定县| 大方县| 寻甸| 通榆县| 高州市| 华蓥市| 广宗县| 松原市| 邳州市| 西乌珠穆沁旗| 丹凤县| 康乐县| 四川省| 瑞昌市| 怀安县| 子洲县| 汕头市| 奉新县| 新源县| 孝昌县| 定州市| 鹤山市| 屏东市| 丘北县| 宜丰县| 尼勒克县| 日照市| 清河县| 南平市| 全州县| 霍城县| 吴忠市| 海原县| 乌拉特后旗| 武隆县| 会东县|