[英]ORA-12154: Can't Connect to Default Oracle XE 21c Database on Windows 10
[英]ORA-12154 Oracle DB Windows Can't Connect SQLPlus
我已經檢查了 stackoverflow 中的其他答案,但沒有任何工作。 我檢查了 tnsnames.ora 沒有發現錯誤。 這是我的 tnsnames.ora 文件的代碼。
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-69D6TBS)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
LISTENER_XE =
(ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-69D6TBS)(PORT = 1521))
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
這是我的 sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
服務也在運行
正如經常出現的這個問題一樣,您沒有顯示用於啟動 sqlplus 的初始命令。 您應該像這樣啟動它,在您的用戶名后跟一個“@”符號,然后是網絡服務名稱,也就是 tnsnames 條目。
c:\sqlplus myuser@XE
但缺少這一點,一旦它開始提示您輸入用戶名和密碼,您需要按照提示的用戶名和網絡服務名稱的規范進行操作:
Enter user-name: username@XE
但是您遇到該特定錯誤的事實有點令人費解。 在沒有指定網絡服務名稱的情況下,它應該嘗試 BEQ 連接(根本不使用 tns)連接到由 %ORACLE_SID% 的值標識的本地數據庫。 在這種情況下,它應該連接或給出“協議適配器錯誤”。它在此特定用法中遇到此特定錯誤的事實將向我表明您已設置 %TWO_TASK%。 這將覆蓋 ORACLE_SID 並告訴 sqlplus 嘗試為 %TWO_TASK% 的值建立 tns 連接。
作為旁注,報告錯誤的性質意味着請求從未接近偵聽器,因此此時偵聽器配置無關緊要。 ORA-12154 相當於無法在電話簿中找到某人的姓名。 如果您找不到它(它未列出或您使用了錯誤的電話簿),那么您甚至無法撥打電話(將請求發送給聽眾)。
為了將來參考,命令窗口的屏幕截圖不如從窗口復制和粘貼文本,然后將粘貼的文本格式化為“代碼”有用。 如果您在此處完成了此操作,則可以向上滾動窗口以復制/包含您使用的 sqlplus 命令。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.