我在使用 sqlplus 登錄時遇到登錄問題。當我使用主機名、埠和服務名登錄時,它作業正常。
sqlplus <userid>/<password>@<hostname>:<port>/<servicename>
上述命令沒有問題。它按預期作業。
當我嘗試使用連接字串登錄時,
sqplus <userid>/<password>@<connectstring>
我越來越
ORA-12154: TNS: 無法決議指定的連接識別符號
我知道我的 sqlnet.ora 和 tnsnames.ora 不正確,但無法找出問題所在。
sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES = (NTS)
NAMES.DEFAULT_DOMAIN = world
檔案中有兩行以上。
tnsnames.ora
MYTNSENTRY=
(DESCRIPTION =
....
tnsnames.ora 中定義的主機名、埠和服務名稱,只有一個條目。我在 windows 平臺上執行 sqlplus 命令。
非常感謝有關此問題的任何指示。
uj5u.com熱心網友回復:
您在 sqlnet.ora 中有這一行:
NAMES.DEFAULT_DOMAIN = world
這意味著在 tnsnames 中查找之前,'.world' 將被附加到您的連接字串。從 sqlnet.ora 中洗掉該行,或將“.world”附加到 tnsnames.ora 中的條目名稱
mytnsentry.world =
(description...)
uj5u.com熱心網友回復:
同意@EdStevens 所說的,并SQLNET.AUTHENTICATION_SERVICES從 sqlnet.ora 中洗掉該行。該設定旨在幫助使用 Windows 本機安全性(如作業系統身份驗證)對用戶進行身份驗證,但如果您不使用它,那么它通常會產生問題。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/373103.html
