近段時間很多網友提出監聽配置相關問題,客戶終端(Client)無法連接服務器端(Server)。本文現對監聽配置作一簡單介紹,給出PL/SQL Developer 連接Oracle數據庫詳細配置方法,並提出一些客戶終端無法連接服務器端的解決思路,願對廣大網友與讀者有一些幫助。
一、監聽器(LISTENER)
選中窗口右側欄下拉選項中的“數據庫服務”,點擊添加數據庫按鈕。在出現的數據庫欄中輸入全局數據庫名,如myoracle。注意這里的全局數據庫名與數據庫SID有所區別,全局數據庫名實際通過域名來控制在同一網段內數據庫全局命名的唯一性,就如Windows下的域名控制器,如這里可以輸入myoracle.192.168.1.5。Oracle主目錄可以不填寫,輸入SID,如myoracle。完整的數據庫服務配置如下圖示:
保存以上配置,默認即可在Oracle安裝目錄下找到監聽配置文件 (Windows下如D:/oracle/ora92/network/admin/listener.ora
至此,Oracle服務端監聽器配置已經完成。
2、 本地服務名配置(Tnsnames)
本地服務名是基於Oracle客戶端的網絡配置,所以,如果客戶端需要連接數據庫服務器進行操作,則需要配置該客戶端,其依附對象可以是任意一台欲連接數據庫服務器進行操作的PC機,也可以是數據庫服務器自身。如前面所介紹,可以利用Oracle自帶的圖形化管理工具Net Manager來完成Oracle客戶端的配置。選中如圖(一)中的服務命名,再點擊左上側“+”按鈕,彈出如下圖示對話框:
輸入Net服務名,如myoracle,點擊下一步,進入下圖示對話框:
選中TCP/IP(Internet協議),點擊下一步,如下圖示:
輸入主機名與端口號。注意這里的主機名與端口號必須與數據庫服務器端監聽器配置的主機名和端口號相同。點擊下一步,如下圖示:
選中(Oracle8i或更高版本)服務名,輸入服務名。這里的服務名實際上就是數據庫服務器端監聽器配置中的全局數據庫名,前者與后者必須相同。連接類型通常選專用服務器,這要視數據庫服務器的配置而定,如果配置的共享數據庫服務器,這里的連接類型就要選共享服務器,否則建議選專用服務器(關於專用服務器的介紹請參閱相關文檔)。配置好后點擊下一步,如下圖示:
如果數據庫服務器端相關服務啟動了,可以點擊測試按鈕進行連接測試。Oracle默認是通過scott/tiger用戶進行測試連接,由於scott用戶是Oracle自帶的示例用戶,對於正式的業務數據庫或專業測試數據庫可能沒有配置這個用戶,所以需要更改成有效的用戶登錄才可能測試成功。如果這里測試連接不成功,也不要緊,先點完成按鈕結束配置。回到Oracle網絡管理器(Oracle Net Manager)主窗口,保存配置,默認即可在Oracle安裝目錄下找到本地服務名配置文件 (Windows下如D:/oracle/ora92/network/admin/tnsnames.ora)。配置完成的本地服務名如下圖示:
樹形目錄下的服務命名可以通過編輯菜單里的重命名菜單更改成任意合法字符組成的服務名稱,注意服務名稱前不能有空格字符,否則可能無法連接數據庫服務器。
配置完成后,Oracle客戶端應該可以連接到遠程Oracle 數據庫上。
3、 使用PL/SQL Developer連接數據庫
Database內填上遠程數據庫的UserName、Password、DateBase、Connect AS,就可以連接上數據庫了。