sarge(Debian 3.1 testing) 安裝ORACLE 9i

這個版面主要討論 debian 在 server 端的應用問題, server 種類繁多..舉凡 Web Server 、 File Server、 DHCP Server..等等。

版主: 阿信

sarge(Debian 3.1 testing) 安裝ORACLE 9i

文章lotus » 週一 12月 12, 2005 5:10 pm

前言

因為公司的需要用到ORACLE 所以在家也安裝一套 ORACLE 作為測試用途
之前安裝過最穩定的版本是 REDHAT 6.2+ORACLE 816 +Jdk1.1.8_v3

事過境遷 oracle 8i 已經不開放下載 10G 又耗硬體 考量測試需求還是安裝9i
另一方面轉過來用debian 大概也有一兩年了 喜歡Debian 不像 REDHAT 體積龐大
裝半天也不知道到底在安裝了哪些套件 所以就選擇 sarge 安裝 基本上 某些在
Redhat的問題 這邊也差不多會發生 參考了一堆文件 終於把它裝好了 可惜網路上
幾乎沒有針對sarge +oracle 9i的安裝說明 在下借摩托學園做份筆記也分享給網友

主要硬體:

CPU:P4-1.8 (Celeron)
RAM:768MB (SDRAM)
VGA:NVIDIA GF2
Mainboard:MSI 845 Pro2
H.D.D:Seagate ST380011A 80G

準備

a.Debian 3.1 sarge (net-install )

您可以到debian站台下載 共 108 MB 下載完再燒錄 站台在此:
http://www.debian.org/CD/netinst/

b.oracle 9i:
您可以到ORACLE官方網站上註冊下載 因為版權上的宣告 很抱歉這方面無法提供連結 必須
您親自註冊下載 目前 ORACLE 官方站上的是 ORACLE 9i (9204版本)一共有三個檔案 註冊
後下載請注意 版權宣告上有詳細說明不得用於商業用途 如果您是使用商業用途 請與ORACLE
連絡...檔案大小如下:

ship_9204_linux_disk1.cpio.gz (538,906,295 bytes) (cksum - 245082434)
ship_9204_linux_disk2.cpio.gz (632,756,922 bytes) (cksum -2575824107)
ship_9204_linux_disk3.cpio.gz (296,127,243 bytes) (cksum - 96915247)

c.Java Runtime Environment Version 5.0 Update 6

您可以到 www.java.com 下在 For Linux 的 .bin 檔案 大約 15.99 MB 連結在此:
http://jdl.sun.com/webapps/download/Aut ... leId=10336

安裝 debian

1.安裝 debian 不再贅述 按照一般的安裝法即可 您可以參考 Debian 無痛起步法的說明去安裝
在下的kernel版本是 2.4.27-2-686 請注意 這台機器是拿來當oracle server 的為了避免不必要
的麻煩 所以把所有的磁區切成同一塊 ip address 也請給固定的內部虛擬IP 盡量別用 DHCP

2.升級 debian

安裝完成後下 apt-get update;apt-get upgrade 升級

在下的 sources.list 給各位參考

deb http://debian.linux.org.tw/debian/ stable main contrib non-free
deb http://debian.linux.org.tw/debian/ testing main contrib non-free
deb http://security.debian.org/ sarge/updates main contrib non-free
deb http://security.debian.org/ testing/updates main contrib non-free

3.X-window 安裝

a.安裝 x-window-system-core 請直接下 apt-get install x-window-system-core

2.安裝 nvidia 驅動程式

摩托學園討論區內有不少關於 nvidia 驅動程式的說明 如果您用的kernel版本跟在下
相同 可以參考這篇 第二段部份 有關 kernel-2.4* 安裝 nvidia driver 那段說明連
結在這邊:

viewtopic.php?t=7360&highlight=nvidia+kernel+2.4

3.安裝 桌面管理程式

常見的桌面管理程式有 kde gnome xfct4 等 但考量 使用率 事實上Oracle Server
除了安裝時使用外 其餘時間幾乎不需要進xwindow 所以在下選擇的是最簡單的twm
您可以以root權限下

apt-get install twm xterm 去安裝 它將會安裝 twm xterm menu 等套件

4.安裝jdk

把 jre-1_5_0_06-linux-i586.bin 這個套件放到 /usr/local/ 以root權限下:


chmod 700 jre-1_5_0_06-linux-i586.bin ;讓套件可以執行

./jre-1_5_0_06-linux-i586.bin ; 解壓縮該套件 請注意版權宣告後打yes 同意版權宣告

mv jre1.5.0_06 /usr/localjava/ ; 將 jre1.5.0_06 移到 /usr/local/java 底下 當然您
也可以用連結的方式(ln -s)


5.安裝其餘套件

根據網頁:http://www.geekbone.org/~chaos/debian-ora9i.txt 的說法 安裝oracle 還需要以下套件

make, binutils, gcc, libstdc++2.10-glibc2.2, libstdc++2.10-dev, libstdc++2.9-glibc2.1

您可以直接以root權限下:
apt-get install make binutils gcc libstdc++2.10-glibc2.2 libstdc++2.10-dev

其中 libstdc++2.9-glibc2.1 套件已經找不到了 您可以另外由 debian 套件查詢的網頁去尋找
libstdc++2.9-glibc2.1 記得Distribution 要選any
查詢套件的網頁在此:http://www.debian.org/distrib/packages 本套件存在於oldstable(應該是
woondy裡)

請下載 libstdc++2.9-glibc2.1_2.91.66-4_i386.deb 並以root權限下指令:

dpkg -i libstdc++2.9-glibc2.1_2.91.66-4_i386.deb 安裝此套件


以上 基本功算是完成了 但是一開始安裝時仍會出現問題 它出現的訊息大概是這一句:

/etc/libcwait.so: cannot open shared object file: No such file or directory

需要打上補釘(大陸習慣用語 ^_^) 也就是要上patch 它的 patch 名稱是: p3006854_9204_LINUX.zip
您可以上google去尋找這個patch 這個套件似乎有版權問題(ORACLE?)所以不方便放上連結 請自己尋找
很好找的 當然 還有另外一招解 但是比較不方便 所以在下就不說明 (您可以把錯誤關鍵直接打上google
有很詳細的說明也有solution)

7.調整記憶體 (請根據您的實際狀況更改 詳細可以參考oracle 9i 技術文件 ORACLE官方站可以找到 )

以root權限修改 /etc/sysctl.conf 這個檔案

kernel.shmmax = 402653184
kernel.shmmni = 4096
kernel.shmall = 786432
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

Shmmax 最大共用記憶體 官方文件建議是實體記憶體的1/2
(例如在下就是 384*1024*1024=402653184)
Shmmni 最小記憶體共用量
Shmall 所有記憶體大小 (768*1024)
kermel.sem 四個參數分別代表:
SEMMSL(每個client端最大流量);SEMMNS(系統總訊號流量量);SEMOPM(每次semopm系统挪用
流量);SEMMNI(系統loading最大流量)



8.建立 oracle 帳號

請以root權限執行以下指令:

groupadd dba;
//建立 一個群組叫 dba

useradd -d /opt/oracle -g dba -s /bin/bash oracle;
//建立使用者oracle 參數-g是 群組 -s 是shell宣告 -d 是該使用者的根目錄宣告 請參閱useradd說明

password oracle;
// 建立oracle的密碼

mkdir /opt/oracle;
//建立/opt/oracle的目錄

chown -R oracle.dba /opt/oracle;
//改變/opt/oracle子目錄的權限;

9.設定使用者 oracle 的環境

編輯 /opt/oracle/.bash_profile

if [ -f ~/.bashrc ]
then
. ~/.bashrc
fi

編輯 /opt/oracle/.bashrc (這是可以改動的 請依你的實際狀況更改)

export LC_ALL=en_US
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE
export ORACLE_TERM=xterm
export ORACLE_SID=orcl ; 你的ORACLE SID
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export PATH=$PATH:$ORACLE_HOME/bin
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib

存檔以後 請用oracle這個帳號登入看看 沒問題就可以開始安裝oracle了


10.安裝 oracle 9i

由ORACLE官方 網站上 download 的三個檔案 請以 oracle 權限做以下操作:

zcat ship_9204_linux_disk1.cpio.gz | cpio -idmv
zcat ship_9204_linux_disk2.cpio.gz | cpio -idmv
zcat ship_9204_linux_disk3.cpio.gz | cpio -idmv

或者是:

gunzip ship_9204_linux_disk1.cpio.gz ship_9204_linux_disk2.cpio.gz ship_9204_linux_disk3.cpio.gz

它會分別解壓縮三個檔案:

ship_9204_linux_disk1.cpio
ship_9204_linux_disk2.cpio
ship_9204_linux_disk3.cpio

然後再分別 cpio

cpio -idmv < ship_9204_linux_disk1.cpio;
cpio -idmv < ship_9204_linux_disk2.cpio;
cpio -idmv < ship_9204_linux_disk3.cpio;

下載無誤的話 它會出現三個 子目錄:

Disk1 Disk2 Disk3

開啟您的 xwindow : startx

開一個 xterm 進入 Disk1 : cd Disk1

在Disk1裡面打上: ./runInstaller

一切無誤的話 您會看到 oracle 9i 的安裝畫面了

您可以參考這邊的畫面說明:

http://www.vbird.org/somepaper/20050617 ... _linux.pdf



11.後續

安裝完oracle 後在執行 dbca (Database Create admin) 會出現錯誤 類似以下:

../bin/dbca: line 124: 27348 Killed $JRE_DIR/bin/jre -DORACLE_HOME=
$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATH
oracle.sysman.assistants.dbca.Dbca $ARGUMENTS

似乎是java的問題 參考網路上的作法是
進 /opt/oracle/bin/ 編輯 dbca 這個指令 找到下面這幾行(最底下) 只留下第三行 其餘註解掉:

#if [ -f /etc/rac_on ]; then
#Run DBCA
$JRE_DIR/bin/jre –native –DORACLE_HOME=$OH……
#else
#Run DBCA
#$JRE_DIR/bin/jre –DORACLE_HOME=$OH……
#fi

如此 dbca 就可以啟動並建立資料庫了...


當然還有 netmgr 編輯 監聽跟連線模式 跟W*indows 版本相同

oemapp dbastudio ;啟動 Entersprise Manager


資料庫建立完成後還要讓dbstart dbshut 指令生效

1.以root權限編輯/etc/oratab:
orcl:/opt/oracle:N
改成
orcl:opt/oracle:Y


2.拷貝 init.orc (以oracle權限執行)

cp /opt/oracle/admin/oracle/pfile/initorcl.ora.11132005143331 $ORACLE_HOME/dbs/initorcl.ora

如此 就可以用 dbstart dbshut 啟動和停止資料庫了 不過別忘了 開啟和關閉監聽程式:

lsnrctl start & lsnrctl stop

12.參考

以上都是參考網路上許許多多文件拼湊而成 您可以參考以下網頁:

http://www.puschitz.com/InstallingOracle9i.shtml

http://www.linuxfans.org/nuke/modules.p ... w&sid=2606

http://www.vbird.org/somepaper/20050617 ... _linux.pdf

http://www.geekbone.org/~chaos/debian-ora9i.txt

http://www.the-love-shack.net/oracle-on-sid.html

http://www.douzhe.com/mirrors/dbanotes. ... -RHEL3.htm

如果您有問題 歡迎您跟在下一起討論 謝謝收看
lotus
可愛的小學生
可愛的小學生
 
文章: 40
註冊時間: 週六 4月 09, 2005 8:10 pm

回到 debian server

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron