oracle|錯誤|資料|資料庫 Oracle資料庫配置錯誤資訊
Oralce資料庫的錯誤資訊經常會出現,我們看見的都是錯誤的代碼,至於錯誤原因究竟是什麼還一時半會難以解答,所以就把一些常見的錯誤整理了一下,來看看也許對你有協助的.
1. Oracle用戶端網路設定:
在Oralce產品安裝完成後,為了與資料庫伺服器進行串連或者是兩台資料庫之間進行資料複製,則必須進行網路連接配置。
Oracle9i Net Service配置方法:
Oracle9i Net Service的串連配置可以使用資料庫執行個體ORACLE_SID,或者是使用Oracle9i的參數 SERVICE_NAMES。配置Oracle9i用戶端與Oracle9i伺服器端的串連,也是產生Oracle9i Net Service用戶端網路設定檔tnsnames.ora,也可以編輯這個檔案。
tnsnames.ora檔案在Window與Unix下的儲存目錄:
Window NT/2000: D:/oracle/ora90/network/admin/tnsnames.ora
UNIX:/home/app/oracle/product/9.0.1/network/admin/tnsnames.ora
如果tnsnames.ora檔案配置不正確,則錯誤資訊會記錄在串連日誌資訊檔中,其錯誤資訊內容為:
The error strutct:
Nr err code:0
Ns main err code:12560
TNS -12560:TNS: 協議適配器出現錯誤
ns secondary err code:0
nt main err code:530
tns-00530:協議適配器錯誤
nt secondary err code:2
nt OS err code:0
在配置Oracle9i的串連配置中,其伺服器端需要配置監聽程式進程設定檔listener.ora,如果伺服器端監聽進程沒有啟動,則出現以下錯誤資訊:
ERROR:
ORA-12651:TNS:沒有監聽器
該資訊說明所要已連線的服務器沒有啟動監聽進程Listener(該進程為Oracle伺服器上作業系統進程,監聽進程沒有啟動時,伺服器可以正常進行,但是用戶端不能與伺服器產生串連。這時可以在伺服器使用作業系統命令lsnrctl正常起啟動監聽進程)具體方法如下:
C:>lsnrctl start
停止監聽方法:
C:>lsnrctl stop
修改電腦名稱後則需要修改監聽進程中的HOST,否則監聽程式會出現以下錯誤:
Tns-12545:因目標主機或者對象不存在,串連失敗
Tns-12560:tns:協議適配器錯誤
Tns-00515: 因目標主機或者對象不存在,串連失敗
Error:1001:unknow error
在Window NT/2000中,使用服務列表啟動listener.ora服務時也會出現同樣的錯誤資訊
(對話方塊)進行意外中止
這時,可以修改listener.ora中的下一列資訊中HOST處的主機名稱:
(ADDRESS=(PROTOCOL=TCP)(HOST=SUN4500)(PORT=1521))
該名稱必須與實際符合,重新啟動監聽程式即可。附:在listener.ora檔案中,HOST處允許使用IP地址,這樣修改機器名後就不會引起監聽程式啟動失敗。
此外在伺服器與listener.ora檔案統一目錄中還有一個檔案即:tnsnames.ora檔案,此檔案是用於兩個伺服器之間的串連配置,即Oracel分布式環境中的網路設定該檔案的目錄如下:
Window NT/2000 D:\oracel\ora90\network\admin\tnsnames.ora
UNIX: /home/app/oracle/product/9.0.1/network/admin/tnsnames.ora
在伺服器中,tnsnames.ora預設是使用伺服器名進行配置的,所以如果修改了機器名,則該檔案同時需要修改,否則出現如下錯誤:
Error:
ORA:-12545:因目標主機和對象不存在,串連失敗
錯誤碼ORA-12545表示網路連接串(即tnsnames.ora檔案中的HOST處)中使用的機器名和IP地址不存在,重新修改和重新串連即可。
Oracle9i Net Service的嚮導工具進行配置:
選擇此選項以建立、修改、刪除或重新命名監聽程式。監聽程式是伺服器中接收和響應客戶機對資料庫的串連請求的進程。使用配置有相同協議地址的串連描述符的客戶機可以向監聽程式發送串連請求。
Oracle9i net Manager:
可以定義簡單名稱來表示服務的位置,例如一個資料庫,這些簡單名稱映射為串連描述符。他們包含服務的網路標識和位置。
錯誤資訊ORA-12560表示,在作業系統中找不到所定義的執行個體,在Oracle9i中,如果出現了此類錯誤,一般來說出錯原因有兩個,一是執行個體名被錯誤的修改,二是Oracle的服務沒有正常啟動。
[1] [2] 下一頁