Oracle

使用連接字元串從命令行連接到 sql plus

  • November 22, 2021

假設我有一個 Oracle 數據庫。我有一個使用者名 = x,密碼 = y,數據庫 = z。我也知道埠 = a,SID = b,主機名 = c。

那麼我需要如何正確連接呢?我使用了許多選項,例如:

sqlplus x/y@'(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=c)(PORT=a))(CONNECT_DATA=(SID=z)(SERVER=DEDICATED)))'

sqlplus (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=c)(PORT=a))(CONNECT_DATA=(SID=b)))

送出這些命令行通常會給我返回錯誤消息,例如:

ORA-12560:TNS:協議適配器錯誤

ORA-12514:TNS:監聽器目前不知道服務

提前謝謝了!!

你試過了嗎

sqlplus username/password@host:port/service
sqlplus x/y@c:a/b

現代版本的 sqlplus(版本 11 或更高版本)理解此語法,您不需要 tnsnames.ora 文件。

最簡單的就是使用 tnsnames.ora 文件連接數據庫。為此對其進行編輯並添加一個新條目:該文件通常位於 $ORACLE HOME\NETWORK\ADMIN 目錄中。

myDb  =
(DESCRIPTION =
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(Host = c)(Port =a))
  )
(CONNECT_DATA =
  (SERVICE_NAME =b)
)
)

然後你可以連接到數據庫:

sqlplus x/y@myDb

引用自:https://dba.stackexchange.com/questions/65032