本地不安裝Oracle,plsql遠程連接數據庫


由於Oracle的龐大,有時候我們需要在只安裝Oracle客戶端如plsql、toad等的情況下去連接遠程數據庫,可是沒有安裝Oracle就沒有一切的配置文件去支持。最后終於發現一個很有效的方法,Oracle的Instant client工具包可以很好地解決這個問題,而且小而方便。
1、首先到Oracle網站下載Instant Client :

http://www.oracle.com/us/solutions/index-097480.html 

解壓之后的文件夾叫:instantclient_11_2.可以放在本地磁盤任意目錄下.例如:D:/instantclient_11_2

2、在D:/instantclient_11_2目錄下新建目錄network,在network目錄下再建admin目錄,在admin目錄下新建文件tnsnames.ora,打開寫入如下內容:

ORCL =
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.6.8.10 )(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl )
    )
)

其中ORCL是遠程數據庫在本地的主機名,10.6.8.10是遠程服務器的IP地址,orcl是遠程數據庫的名稱。

3、添加一個環境變量,名為TNS_ADMIN,值為tnsnames.ora文件所在路徑。
通過(我的電腦--屬性--高級--環境變量--新建)來新增環境變量。

4、下載並安裝PL.SQL.Developer配置應用
配置tools->preferences->connection

Oracle Home
D:/instantclient_11_2

OCI library
D:/instantclient_11_2/oci.dll

配置完成后關閉PL/SQL ,再重啟.

主機名就會出現在PL/SQL Developer的列表里,輸入用戶名密碼,就可以登錄遠程oracle 數據庫。

當我們連接成功后有時候查詢出來的數據會出現亂碼的問題,這是因為本地的編碼和服務器端編碼不一致,這時候我們可以通過SQL語句:

select userenv('language') from dual;

查詢出服務器端的編碼,如我自己的查詢結果為

USERENV('LANGUAGE')
AMERICAN_AMERICA.ZHS16GBK

我們就需要添加一個環境變量NLS_LANG ,值為: AMERICAN_AMERICA.ZHS16GBK 然后重啟PL/SQL就不會再有亂碼問題了。

 

原文地址:http://blog.sina.com.cn/s/blog_6549ae4c01011kai.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM