本地pc機上的plsql連接本地Oracle庫和其他遠程環境的Oracle database庫,都必須通過本地pc機上的client配置連接,client連接有三種配置方式:
方式一:只需要在本地安裝oracle client的tnsnames.ora文件中,添加TNS(連接串)即可;
tnsnames.ora文件所在的目錄,這個要看自己的Oracle安裝目錄,每個人的安裝目錄可能不一樣,本人的安裝目錄在F盤,所以在下列目錄下:
F:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN
在這個文件中,添加TNS信息之后,點擊保存即可;
TEST=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = testlg)
(SERVER = DEDICTED)
)
)
然后打開plsql登錄界面,數據庫下拉選中,可以找到剛配置的TNS服務名稱,對應關系如下圖:
方式二:通過oracle client圖形界面來配置數據庫連接(推薦):
Net Manager圖形配置工具對Oracle客戶端進行配置,該配置工具實際上是修改Oracle client的tnsnames.ora文件,推薦使用這種圖形界面方式。
選擇服務名稱,點擊新增:
這個網絡服務名是自己給數據庫連接起的一個名字,就是plsql下拉選中顯示的名稱,可以自己定義;
一般連接的協議都是tcp,如果沒有特殊情況,都選擇這個協議:
這個主機名一般都是主機ip,如果是本地庫,就寫本地ip,如果是遠程庫,就寫遠程ip:
服務名是遠程數據庫名稱,當然,這個也可以配置本地數據:
最后關閉時,會提示是否保存,一定要保持之后,才能寫入到tnsnames.ora文件中生效:
查看tnsnames.ora文件如下,然后打開plsql登錄,下拉可以看到對應的名稱,和直接修改tnsnames.ora是一樣的效果:
方式三:通過instant client來配置數據庫連接:
Instantclient是oracle連接的一個客戶端之一,通常只是登錄使用,功能比較簡單,相比oracle client而言,功能要簡單的多,體積小,輕量級;
具體使用如下:
1.下載對應版本的Instantclient(注意32位和64位),有免安裝版的,網上都很多教程;
2.然后打開plsql不登錄,打開界面,然后配置Instantclient客戶端路徑:
配置連接,將instantclient配置進去,例如我的instantclient的位置如下:
Oracle主目錄名:F:\Oracle\instantclientx32\instantclient_12_2
OCI庫:F:\Oracle\instantclientx32\instantclient_12_2\oci.dll
此處配置好之后,提示下次登錄生效,然后關閉plsql;
3.配置TNS連接:
找到instantclient客戶端的TNS配置文件,然后將數據庫的TNS連接串配置進去:
例如我的TNS配置文件位置:
然后將TNS配置到這個文件中:
配置好之后,保存就可以了;
4.打開plsql登錄:
plsql登錄界面登錄:
這里要注意的是,這個數據庫指的是剛配置中的自定義連接名,而且要手動輸入,下拉選中沒有配置的選項,但是不影響連接;(oracle client客戶端可以看到配置的選項;)
上述的三種方式配置實際上是兩種,前兩種是oracle client的不同配置方式,第三種是instant client的配置,這三種配置可以是本地庫,也可以是遠程庫,配置好之后,在plsql登錄的時候可以根據需要來選擇;