解決問題:Asianux3下Oracle 10g無法啟動

來源:互聯網
上載者:User

簡要記之,僅作備忘。

 

關鍵詞:紅旗Asianux3 +Oracle 10g R2 for Linux x86-64

 

1. 上午接到諮詢電話:Linux下Oracle無法啟動。約定下午到現場嘗試解決問題。

2. 到現場後,瞭解基本情況如下:

   *.作業系統:Asianux3

   *.資料庫:Oracle 10g R2 for Linux x86-64

   *.問題表現:伺服器搬到新機房後,之前已裝好的Oracle資料庫無法正常使用,用戶端串連時報監聽錯誤。

3. 問題在前幾天已經發現。

   待到現場後,探索服務器上listener.ora、sqlnet.ora、tnsnames.ora這三個檔案已被修改的面目全非。

   嘗試一個一個還原。

4. 上述檔案修改還原後,Oracle的dbconsole仍無法啟動。

   使用emctl status dbconsole 或e mctl start dbconsole命令,均有報錯:

   -----------

   OC4J Configuration issue.
   /opt/app/oracle/product/10.2.0/db_1/oc4j/j2ee/OC4J_DBConsole_localhost_orcl not found.

   -----------

5. 因是正在裝修的新辦公大樓,新機房還未連上外界網路。無法使用筆記本上網查詢問題,只好用手機代勞。

   一般是因修改Oracle綁定的伺服器的機器名,造成無法啟動Oracle服務。

   但此伺服器在搬遷後只做了IP地址修改,並未對機器名做修改。

   一時困惑,無解。

6. 系統目前正在測試部署中,資料庫中還無任何資料。

   徵得同意後,決定重裝Oracle。

7. 卸載Oracle後,使用Oranavi做全新安裝。

   前段安裝比較順利。在環境檢測階段網路裝置報了一個“未執行”,忽略,繼續。

   當建立資料庫執行個體進行到74%時,出現異常:

   -----------

   參數PORT的值null無效
  
   請參閱/opt/app/oracle/product/10.2.0/db_1/cfgtoollogs/dbca/orcl/emConfig.log中的記錄檔。

   -----------

   此資料庫執行個體安裝失敗。確定後,繼續完成Oracle的安裝。

   安裝完畢後,發現tnsnames.ora中原本應是1521的連接埠,寫著“null”:PORT = null。

8. 懷疑1521連接埠被佔用。或者某設定檔或Oracle使用者的環境變數中未明確指定1521連接埠。

   折騰。

   一圈下來後,沒有發現任何有價值線索。

   無奈,用dbca單獨建立第二個資料庫執行個體,做測試安裝。

   同樣的問題,在建立資料庫執行個體到74%時,拋出異常:參數PORT的值null無效。

9. 囿於環境。繼續用手機上網搜尋尋找問題。

   終於發現2個多月前,有人遇到相似問題。提到在/etc/hosts檔案中主機IP配置可能有問題。

   於是,開啟/etc/hosts檔案中查看。

   果然,除了127.0.0.1的IP外,在/etc/hosts檔案中還設定綁定了一個在伺服器搬遷之前的舊主機IP。

10. 修改為現在的正確IP後,卸載已安裝的Oracle資料庫。

    重新安裝至完畢,一切OK!

    在環境檢測階段也無任何異常,全部通過。

11. 這是第一次使用Asianux作業系統。不知/etc/hosts在系統安裝時,預設的主機配置是如何寫的。

    開啟RedFlag Linux,發現預設情況下,/etc/hosts中只有一行:

   -----------

    127.0.0.1   localhost.localdomain localhost

   -----------

    此配置使用設定127.0.0.1為HostIP,並無與系統真實的IP做任何綁定,可修改IP地址而Oracle伺服器不會受任何影響。

    而在Asianux中,/etc/hosts中出現了多個主機IP。

    顯然,是因修改了伺服器的IP而導致Oralce服務受到影響。修改伺服器IP的同時,也需同步修改/etc/hosts檔案中所使用的主機IP。

    (還未得知此前該主機的舊IP是否為系統安裝後手工添加的,或與Asianux作業系統有關?需待確認和驗證。)

12. 在linux下,/etc/host是是主機名稱和IP設定檔。

    /etc/hosts檔案中可配置如下類似內容:

   -----------

    127.0.0.1 localhost.localdomain localhost
    192.168.1.100 linuxserver.com linuxserver
    192.168.1.120 ftpserver ftp120

   -----------

   通常,hosts檔案中每行文字代表一個主機配置資訊。

   每行文字由三部份組成,每部份由空格隔開:

   第一部份:網路IP地址

   第二部份:主機名稱或網域名稱

   第三部份:主機名稱別名

   另,每行文字也可為兩部份,即主機IP地址和主機名稱,如:192.168.1.100 linuxServer。

   顯示主機名稱和主機IP的命令:
   # hostname
   # hostname -i

 

                                                      By JRQ

                                                2010/07/10 於南昌

 

[ -- 完 -- ]

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.