免安裝Oracle客戶端使用PL/SQL鏈接Oracle的2種方法

免安裝Oracle客戶端使用PL/SQL鏈接Oracle的2種方法html

做者:netshuai  來源:博客園  發佈時間:2009-10-23 09:19  閱讀:171 次  原文連接   [收藏]sql

方法一:服務器

你們都知道,用PL/SQL鏈接Oracle,是須要安裝Oracle客戶端軟件的。有沒要想過不安裝Oracle客戶端直接鏈接Oracle呢?oracle

其實我一直想這樣作,由於這個客戶端實在太讓人討厭了!!!不但會安裝一個JDK,並且還會把本身放在環境變量的最前面,會形成不小的麻煩。tcp

其實我以前問過不少人的,可是他們都說必定須要安裝Oracle客戶端的.......直到昨天無心中發現瞭如下這個方法:測試

只須要在Oracle下載一個叫Instant Client Package的軟件就能夠了,這個軟件不須要安裝,只要解壓就能夠用了,很方便,就算重裝了系統仍是能夠用的。操作系統

下載地址:http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.htmlhtm

下載這個,Instant Client Package - Basic包。而後解壓到任意目錄,在這個目錄下創建NETWORK文件夾,接着再這個文件夾下再創建ADMIN文件夾,而後創建tnsnames.ora文件,內容以下:ip

oracledata =ci

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = yourhostIp )(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = yourSID   )

)

)

這裏根據本身的實際狀況配置。接着打開PL/SQL,在perference裏面設置OCI  Library和Oracle_home,個人設置是OCI  Library=c:\oracleclient\oci.dll,Oracle_home=c:\oracleclient。

根據本身的實際狀況配置,其實就是剛纔下載下來的那個包的路徑。還有最後一個問題,須要設置一個字符集,這樣查詢出來的數據纔不會是亂碼,寫一個批處理pldev. bat放到pl安裝目錄下,內容以下:

set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

PLSQLDev.exe

這個字符集,指的是服務器端的字符集,請根據實際狀況配置。

最後,只要雙擊這個批處理,再填寫賬號和密碼就能夠了

方法二:

前幾天發了免安裝Oracle客戶端使用PL/SQL鏈接Oracle一文,巴士飛揚和我說,他早就用了另一個更好用的綠色版本Oracle客戶端,並且不須要太複雜的配置。

我比較了一下,個人文章中的方法,客戶端比較大,30M左右。設置比較複雜,不過應該比較穩定。巴士飛揚所提供的包是一個3M多一點的,解壓開來10M,應該是某位高人作的。

綠色版Oracle客戶端下載(由巴士飛揚友情提供):Oracle客戶端

你們也說說哪一個好用吧!!!

使用特別注意:

使用的時候,只要複製到任意目錄就能夠了,不過默認的目錄是:「C:\\ora90」。

若是須要更改默認設置,須要修改文件「Oracle9i.reg」裏的默認「oracle_home」

把相關的路徑都改成「實際」的oracle路徑就能夠了。

這種綠色安裝方式還適合在操做系統重新安裝的時候,若是你的oracle安裝在非系統盤下,就可使用廢棄的安裝目錄,使用修改過的「Oracle9i.reg」註冊就能夠了。很是方便。本人已經嘗試成功了。

這 里根據本身的實際狀況配置。接着打開PL/SQL,在perference裏面設置OCI Library和Oracle_home,個人設置是OCI  Library=c:\oracleclient\oci.dll,Oracle_home=c:\oracleclient。

根據本身的實際狀況配置,c:\oracleclient其實就是剛纔下載下來的那個包的路徑。

配置工做基本完成,再作一個bat 批處理來解決字符集亂碼的問題:

寫一個批處理plsql. bat放到plsqldeveloper安裝目錄下,內容以下:

set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

PLSQLDev.exe

這個字符集,指的是服務器端的字符集.

—-

常設的字符集:

set nls_lang=simplified chinese_china.zhs16cgb231280

set nls_lang=simplified chinese_china.ZHS16GBK

set nls_lang=simplified chinese_china.Utf8

備註:

instantclient-basic-win32-11.1.0.6.0.zip -這個是支持Oracle 9i 以上的版(不包括Oracle9i)

instantclient-basic-win32-10.2.0.1.zip -這個是支持Oracle8i 和Oracle9i 的。

一、打開cmd輸入netca。

二、選擇【本地net服務名配置】→下一步。

三、選擇【添加】→下一步。

四、在【服務名】中輸入你想要鏈接的服務器上的oracle服務的名字→下一步。

五、選擇【tcp】→下一步。

六、在【主機名】中輸入你想要鏈接的服務器ip,端口號不變→下一步。

七、選擇【進行測試】→下一步。(固然你也能夠選擇不測試)

※1測試若是不經過,點擊【更改登陸】輸入一個確定能登入的【用戶名】和【口令】→肯定,出現【正在鏈接...測試成功。】代表測試成功。

※2測試不經過的話,點【上一步】確認你寫的【服務名】和【主機名】,確認無誤的狀況下,確認你要鏈接的服務器oracle監聽服務已經打開。

八、在【net服務名中】輸入你想要使用的本地的服務名→下一步。

※就是【sqlplus user/passwd @本地服務名】。

九、選擇【否】→下一步。

十、出現【net服務配置完畢】字樣→下一步。

十一、點擊【完成】完成服務配置。

十二、在上面服務配置完成之後,在cmd中輸入以下命令便可遠程登陸oracle服務器:

sqlplus user_name/password@本地服務名

必定記住,上面的本地服務名是你第8步寫的服務名。

相關文章
相關標籤/搜索