在 Red Hat Linux 9 上安裝 Oracle9i Database(轉)

zyb200發表於2007-05-31



在 Red Hat Linux 9 上安裝 Oracle9i Database

作者:Abhijeet Kulkarni

資料庫版本:Oracle9i R2 (9.2.0.1.0)

[@more@]

1. 建立使用者與組:
-------------------------
切換為 Root 使用者並執行下列命令

$ su -

# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle

2. 建立目錄。
--------------------------
我們將把所有東西都安裝到在 /opt/ora9 目錄下:

# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9

3. 預安裝(系統配置):
---------------------------

3.1 安裝這些相容性庫:

compat-gcc-7.3-2.96.118.i386.rpm
compat-libgcj-7.3-2.96.118.i386.rpm
compat-libgcj-devel-7.3-2.96.118.i386.rpm
nss_db-compat-2.2-20.i386.rpm

您可以在安裝 CD 上找到這些程式包。
第一個檔案在 CD1 的 RedHat RPMS 目錄中
另外 3 個檔案在 CD2 的 RPMS 目錄中

3.2 設定核心引數以便能夠成功啟動:

把這些行新增到 /etc/sysctl.conf
如果您有更多 RAM,也可以更改這些值:

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

把這些行新增到 /etc/security/limits.conf

oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384

重啟系統以使這些核心更改生效,如果不允許重啟,您可以在執行時透過執行下列命令更改核心引數:

# echo 250 32000 100 128 > /proc/sys/kernel/sem
# echo 536870912 > /proc/sys/kernel/shmmax
# echo 4096 > /proc/sys/kernel/shmmni
# echo 2097152 > /proc/sys/kernel/shmall
# echo 65536 > /proc/sys/fs/file-max
# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range

4. 預安裝(oracle 環境):
----------------------------
以 oracle 使用者身份登入:

su - oracle

將下列行放置在 ~/.bashrc:

#oracle 9i
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=vt100
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:$PATH
#
#根據您本國的情況更改這個 NLS 設定:
#示例:
# german_germany.we8iso8859p15, american_america.we8iso8859p2 etc.
#
export NLS_LANG='croatian_croatia.ee8iso8859p2'


如果您需要其它的國家設定(這些是克羅埃西亞的),請參考這裡的支援設定,並對 NLS_LANG 變數進行相應更改。

5. 安裝:
------------------------

以 Root 使用者登入並允許使用者 oracle 向 X 顯示器寫入:

su -
xhost +

登入為 oracle 使用者:

su - oracle

開始安裝。不要切換到您的 CD-ROM 安裝目錄,因為您將無法在系統需要時卸下第一張 CD 以插入其它 CD。

/mnt/cdrom/install/linux/runInstaller

在安裝期間,系統會提示您插入其它安裝盤。開啟一個新的控制檯,用命令 umount /dev/cdrom(以 Root 使用者身份)卸下當前的碟片,替換該碟片。如果 Redhat9 沒有自動安裝它,那麼使用命令 mount /dev/cdrom 將其裝上

安裝將產生兩個錯誤。

* 第一,您將會看到一個錯誤對話方塊提示關於 ins_oemagent.mk 的問題。選擇忽略該錯誤,我們將在安裝後更正該錯誤。
* 第二個對話方塊將通知您 "Error in invoking target install of makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk"。
如果發生該錯誤,開啟一個新的控制檯並以 oracle 使用者身份登入。執行下列命令:

$ cd $ORACLE_HOME/install
$ tail make.log

您將看到與下面類似的一行資訊:

gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/ -L/opt/ora9/product/9.2/lib/
-L/opt/ora9/product/9.2/lib/stubs/ /opt/ora9/product/9.2/ctx/lib/ctxhx.o
-L/opt/ora9/product/9.2/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut
-lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9
-lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9

複製該行,在行末新增 -ldl 然後在 $ORACLE_HOME/bin 中執行它。

$ cd $ORACLE_HOME/bin
$ gcc -o ctxhx -L/opt/ora9/product/9.2/ctx/lib/
-L/opt/ora9/product/9.2/lib/ -L/opt/ora9/product/9.2/lib/stubs/
/opt/ora9/product/9.2/ctx/lib/ctxhx.o -L/opt/ora9/product/9.2/ctx/lib/
-lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc
-Wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9 -lcore9 -lnls9 -lcore9
-lnls9 -lxml9 -lcore9 -lunls9 -lnls9 -ldl

現在,點選對話方塊上的忽略按鈕,安裝將繼續進行。

最後,Oracle 安裝可能會提示您代理程式啟動失敗。選擇忽略,我們將在稍後更改此錯誤。

6. 安裝後處理
---------------------------
開啟一個控制檯並以 oracle 使用者身份登入。執行這些命令:

$ cd $ORACLE_HOME/network/lib
$ make -f ins_net_client.mk install

然後編輯 $ORACLE_HOME/ctx/lib/ins_ctx.mk 檔案,把 13-14 行從:

ctxhx:$(CTXHXOBJ)
$(LINK) $(CTXHXOBJ) $(INSO_LINK)

改為

ctxhx:$(CTXHXOBJ)
$(LINK) -ldl $(CTXHXOBJ) $(INSO_LINK)

然後執行

$ make -f $ORACLE_HOME/ctx/lib/ins_ctx.mk install

現在,您將能夠用下面的命令啟動您的代理程式了

$ /opt/ora9/product/9.2/bin/agentctl start

7. 啟動資料庫
------------------------------
如果您的安裝程式在第 5 部分的最後一步被掛起,不要擔心。等一段時間看它是否響應,如不響應則終止它。
在一個 shell 指令碼(如 setvar.sh)中新增下面幾行
#oracle 9i
export ORACLE_BASE=/home1/orahome
export ORACLE_HOME=/home1/orahome/ora92
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=vt100
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:$PATH
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

儲存此檔案並在命令提示符執行
$source setvar.sh

現在轉至 $ORACLE_HOME/bin
使用任意編輯器編輯 dbca 指令碼
$kwrite dbca

找到 JRE_HOME 環境變數。它指向 JDK 1.8,後者是安裝 CD 的一部分。更改該變數並使其指向您的 linux 安裝的 JDK1.3 或 1.4,轉至檔案末尾,該變數用於呼叫 Java 程式。從路徑中刪除 bin 目錄,並將 jre 可執行檔案更名為 java 檔案。這就像使用我們自己的 JDK 呼叫 java 程式一樣。
啟動
$./dbca

8. 啟動資料庫例項
開啟一個 sqlplus 會話並以 sys/passwd 作為系統資料庫管理員登入
sql>create spfile from pfile='full path of the .ora file created by the dbca utility ';
Eg /home1/orahome/admin/dl226b/pfile/initdl226b.ora

sql>shutdown immediate;
sql>startup;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/64429/viewspace-916951/,如需轉載,請註明出處,否則將追究法律責任。

相關文章