手動製作Oracle9i 10g客戶端的實用方法

2022-04-09 09:35:32 字數 2585 閱讀 9906

其實,現在有了instant client,可能真的沒有必要去嘗試製作oracle客戶端。這裡,我想說說自己的理由:

1. instant client的bug遠多於oracle客戶端package,這個是經過很多實踐發現的。

2. 愛好技術的人都想看看乙個client包,到底如何提取,即算有些冗餘,也沒多大關係。

3. 當你製作出乙份客戶端出來以後,只需要這一次製作,不用再重新安裝客戶端,解壓即可使用。

我們先來看看oracle9i,從它開始:

這裡作乙個假定,就是client要安裝在d盤d:oracleora92下邊,把d:oracle作為所有oracle版本的根目錄oracle_base,這樣就容易處理一些。而ora92子目錄只是作為oracle_home。

然後開始抽取一些有用的子目錄。假設你在別的機器上已經有乙份已經安裝好的oracle9i 伺服器,它位於c:oracleora92,我推薦提取以下子目錄:

assistants

bin

database

dbs

network

oci

ocommon

odbc

oledb

oracore

otrace

plsql

rdbms

slax

sqlplus

bin中其實有很多可以不用的可執行程式,可以直接刪掉,我們可以自行決定。oci子目錄便於開發基於oci的應用程式。odbc用於odbc驅動,oledb用於oledb。其它子目錄都是必須的。

上邊是基本的檔案抽取。將這些檔案複製到d:oracleora92目錄當中。然後,需要乙個登錄檔檔案來註冊它,這個非常關健,以前常有人問我為何不起作用,大多登錄檔中的內容不正確,或者沒有註冊。

登錄檔的內容如下:

windows registry editor version 5.00

[hkey_local_machinesoftwareoracle]

"inst_loc"="c:\program files\oracle\inventory"

"oracle_home"="d:\oracle\ora92"

"oracle_home_name"="orahome92"

"api"="d:\oracle\ora92\dbs"

"oracle_group_name"="oracle - orahome92"

"nls_lang"="na"

"vobhome2.0"="d:\oracle\ora92"

[hkey_local_machinesoftwareoracleall_homes]

"home_counter"="1"

"default_home"="orahome92"

"last_home"="0"

[hkey_local_machinesoftwareoracleall_homesid0]

"name"="orahome92"

"path"="d:\oracle\ora92"

"nls_lang"="na"

[hkey_local_machinesoftwareoraclehome0]

"id"="0"

"oracle_group_name"="oracle - orahome92"

"oracle_home_name"="orahome92"

"oracle_home"="d:\oracle\ora92"

"nls_lang"="simplified chinese_china.zhs16gbk"

"oracle_home_key"="software\oracle\home0"

"sqlpath"="d:\oracle\ora92\dbs"

"oracle_base"="d:\oracle"

"mshelp_tools"="d:\oracle\ora92\mshelp"

"rdbms_control"="d:\oracle\ora92\database"

"rdbms_archive"="d:\oracle\ora92\database\archive"

將這個檔案註冊到登錄檔。

並把d:oracleora92in新增到你的path環境變數當中,然後執行: sqlplus,看看有沒有錯。在d:oracleora92

etworkadmin nsadmin.ora檔案中新增一些oracle服務主機資訊,就可以使用了。

最後,作為建議,我推薦把當前使用者加到組"ora_dba"當中。

在使用者管理當中,新建組"ora_dba",然後新增當前使用者到該組。

基本上就這些步驟。抽取乾淨,總共也就200兆,去掉不相干的,可以壓縮成乙個壓縮檔案大概只有20來兆。想想原始的oracle9i安裝完,大概要佔2g多的樣子,差別太明顯了。

至於10g,相信如果上述步驟能順利走過,10g應該不成問題。

如果有興趣,還可以試試自己提取檔案,做成oracle server的綠色版,無需安裝,只需要幾個命令即可。

曾經試過oracle9i和oracle10g的提取和免安裝。自己動手做這些,有助於加深對oracle的了解。

Oracle9i 10g 樹查詢特性

例子 select select id from test where level a.lv start with id a.id connect by id prior f id f id,idfrom select id,level lvfrom test connect by id fid a...

Oracle 9i 10g 預設的使用者和密碼

sys change on install system manager sysman oem temp scott tiger aqadm aqadm dbsnmp dbsnmp 使用者名稱 口令 登入身份及說明 sys change on install sysdba或sysoper,但不能以n...

oracle9i匯出oracle 10g的大字段

oracle9i匯出oracle 10g的大字段 錯誤現象 用9i的exp匯出時錯誤如下 f oracle bin exp wssw foresee cradle203 file d sb sbxx zb.dmp tables sb sbxx zb export release 9.2.0.1.0 ...