2007年12月6日 星期四

TNS-03505: 無法決定名稱 - 查查全域資料庫名稱與SID是否相同吧!!

測試環境:

WinXP SP2、Oracle 10g(10.2.0.1.0)

C:\Documents and Settings\aiia>tnsping cimsdb
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-12月- 2007 15:01:52
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的參數檔案:
C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
使用 TNSNAMES 轉接器來解析別名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = cimsdb)))

OK (20 msec)

C:\Documents and Settings\aiia>tnsping cimsdbv1
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-12月- 2007 15:01:56
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的參數檔案:
C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
TNS-03505: 無法決定名稱

C:\Documents and Settings\aiia>tnsping cimsdbv2
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 07-12月- 2007 15:02:02
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的參數檔案:
C:\oracle\product\10.2.0\db_1\network\admin\sqlnet.ora
使用 TNSNAMES 轉接器來解析別名
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)
(HOST = 127.0.0.1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = cimsd bv2)))

OK (40 msec)

有沒有注意到用tnsping來進行Oracle資料庫是否已經完裝完成的測試時,為什麼會有不同的結果呢??

原因在於創建資料庫時,透過資料庫組態輔助程式步驟三「輸入全域資料庫名稱」時,他的SID欄位會自動輸入

如果全域資料庫名稱與SID不同時,就會出現TNS-03505的錯誤,而SID名稱只能包括文數字,

以我的例子而言,我在建立cimsdbv1資料庫時,我的全域資料庫名稱是鍵入cimsdb_v1,而SID他自動輸入成cimsdbv1,所以後來的測試就嗝屁了。

沒有留言:

張貼留言