2009-02-19 303 views
0

我正在使用rails freeze 1.2.3來運行rails應用程序。由於該應用程序位於遠程計算機上,因此我使用ssh隧道(ssh -l -L)在我的屏幕上顯示應用程序。當我運行它,它正確地提示登錄頁面,我把在信息後,我得到這個錯誤: OCIError在ServiceController的 錯誤,而試圖檢索錯誤文本ORA-12154OCIError(ruby on rails)

我已經試過了相同的應用程序在另一臺不使用凍結的機器上(因爲該機器的版本爲1.2.3,而當前版本爲2.0.2)。那是錯誤來自哪裏?

謝謝。

回答

0

這是一個Oracle錯誤。這聽起來像你的數據庫設置不正確。把錯誤號碼ORA-12154放入谷歌,你會發現一些有用的東西。

0

ORA-12154是一個經典的。正如Sarah指出的那樣,它與你的Rails或Ruby本身無關。當Oracle客戶端無法連接到oracle服務器時,會生成ORA-12154。因此,最有可能您的設置是錯誤的:

  1. 你的database.yml,如果你能使用TNSPING或SQLPLUS(Oracle客戶端utils的)連接,你可能只需要看看這個。
  2. 您的Oracle網絡設置,特別是您的tnsnames.ora文件(如果我沒有記錯,請在$ ORACLE_HOME/network/admin中找到)。這可能需要友好的DBA提供一些額外的幫助,因爲tnsnames.ora語法有怪癖。點擊此鏈接link text瞭解更多信息。

希望有所幫助。