Oracle 連接遠程數據庫

公司使用linux開發機進行程序開發時,由於開發用Oracle數據庫是由日方提供,所以經常使用sqlplus連接到遠程數據庫上進行開發,例如:

sqlplus  username/password@servicename

於是想,用我的兩臺電腦雙機互聯試一試,也玩個“遠程連接”。實驗如下:

首先在我的臺式機上安裝了Oracle9i的數據庫管理系統,並建立了一個數據庫實例:xy

然後爲該實例新增了一個用戶,用戶名和密碼都是kxy01。啓動實例xy後,在臺式機上,直接在cmd環境鍵入:sqlplus kxy01/kxy01@xy 就可以連接上數據庫,呵呵,想來本地連接都是不費吹灰之力就行的。

之後,在我的筆記本上安裝了Oracle9i的Client工具。然後試着直接用上述命令訪問,顯然是不行的,系統返回無法解析服務名的錯誤信息。

要實現連接到遠程數據庫,先了解一下相關知識吧,查了一下書。原來,Oracle數據庫的遠程連接是通過Oracle Net實現的。在服務器和客戶端都必須運行有配置正確的Oracle Net纔可以。不管使用的配置和配置工具如何,都應該告訴Oracle Net怎樣找到遠程數據庫。

要怎麼配置Oracle Net呢。點開Oracle的開始菜單,尋找相關的工具,發現一個名爲:

Net Configuration Assitant的工具,應該就是它了。啓動之:

Net Configuration Assitant共提供了4個配置功能:

監聽程序配置,

命名方法配置,

本地網絡服務名配置

目錄使用配置。

 

要從遠程位置連接Oracle數據庫,必須配置Oracle網絡監聽程序。Net Configuration Assitant可以用於此項配置工作,啓動後選擇監聽程序配置,一路下一步即可。

之後點開命名方法配置,系統已經默認提供了三種,其他兩種也不太認識,乾脆不改了,直接點後退,回到主菜單。

 

主菜單中,第三項是本地網絡服務名配置。要通過網絡訪問Oracle數據庫或其他服務,要使用網絡服務名,該項配置允許使用由本地命名解析的網絡服務名。而第四項爲目錄使用配置,點開一看,居然要選擇目錄服務器,我這一共就兩臺電腦,要什麼目錄服務,看來第四項不適合本實驗了,顯然,關鍵配置就在第三項:本地網絡服務名配置。

將其點開,選擇“添加”網絡服務名操作,然後會詢問你希望訪問何種版本的Oracle數據庫服務。按照常理,我裝的是Oracle9i自然應該選擇第一個(Oracle8i或更高版本數據庫服務),可經過實踐證明,只有選擇第二個(Oracle8i發行版8.0數據庫或服務)才能正常實現遠程連接,不明其中原因,也就只有選第二個拉。

然後輸入我的數據庫實例SID:xy

 

然後選擇網絡協議,雙機互聯應該選擇TCP吧,再然後填寫數據庫所在的主機名:kxyhome。端口號採用默認的1521。

 

點擊下一步,進行數據庫連接的測試,測試成功後進行網絡服務名的填寫,這個名字就應該是sqlplus連接時候用的服務名了,這裏我們使用:xyhome

 

之後一切配置完成,來到命令行,使用sqlplus進行連接:

sqlplus  kxy01/kxy01@xyhome

成功啦

 

發佈了13 篇原創文章 · 獲贊 5 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章