環境介紹
VMWare7.1,Fedora 8(Rad hat下的一個比較老的版本),Oracle 10g
安裝準備
在WINDOWS上下載了10201_database_linux_x86_64.cpio.gz
然后用WINRAR解壓成.cpio文件,我是通過建立WEB鏈接方式下載到虛擬機上的LINUX的。至于其他方式N種,找個自己熟悉的方式就行。
安裝流程
1.解壓
cpio -idmv < (這個類似于WINRAR,非常麻煩要進行2次解壓)
2.設置內核參數:
(1) 向/etc/sysctl.conf文件中加入: (對初學者而言你可以界面話的操作,如果你感覺很熟悉可以用vi編輯器etc.)
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
(2) 運行下面的命令改變當前內核的參數:
/sbin/sysctl -p
3.加入下面內容到 /etc/security/limits.conf文件
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
4.加入下面內容到/etc/pam.d/login文件
session required /lib/security/pam_limits.so
5.加入下面內容到/etc/selinux/config文件,如果此設置已經存在,改變value值就可以
SELINUX=disabled
6.使用下面的命令檢查必須的包
rpm -q 包名
需要的包有:
binutils-2.* elfutils-libelf-0.* glibc-2.* glibc-common-2.* libgcc-4.*
libstdc++-4.* make-3.* elfutils-libelf-devel-0.* glibc-devel-2.* gcc-4.*
gcc-c++-4.* libstdc++-devel-4.* unixODBC-2.*
如果沒有安裝使用如下命令進行安裝
yum install 包名
(注:包名可以寫成上面的形式)
7.創建用戶及組
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle
usermod -G oinstall oracle
passwd oracle
8.創建目錄
mkdir -p /usr/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /usr/app
9.修改/etc/redhat-release文件
內容為:redhat-4
10.向/etc/profile文件中加入如下內容
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/usr/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=TSH1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
設置之后重新啟動計算機
11.以root 用戶登錄執行以下命令:
xhost +
12.切換到oracle用戶
su oracle
執行:export DISPLAY=:0.0
13.進入oracle安裝文件的目錄
執行 : ./runInstaller
說明:這里要注意的是一定要在當前Oracle解壓的目錄下執行(cd命令和DOS一樣),切記要在oracle帳號下執行,否則會拋一個錯誤。
14.當開始安裝之后,如果出現在下面的幾種異常的處理辦法:
(1)Exception java.lang.UnsatisfiedLinkError: /tmp/OraInstall2005-09-07_01-21-03AM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory occurred
解決:運行 rpm -p - -whatprovides libXp.so.6 打印出此文件依靠的安裝包, 運行 yum install [打印出來的文件名]
說明:這里報的錯誤可能會因為一些包被更新而不同,最方便的方法是安裝包錯的包直接使用yum命令,有些版本虛擬機不支持yum命令,你可以自己安裝下,網上這類的教程很多。
(2)在進入圖形安裝界面后,驗證安裝條件時,如果出現error的情況,請根據提示進入日志文件內.
如果出現:xcb_xlib.c:50: xcb_xlib_unlock: Assertion `c->xlib.lock failed.這樣的錯誤
解決:
A.先root用戶登錄,執行下面內容
yum --enablerepo=development update libxcb
說明:這里一些情況不太一樣,使用該指令沒有更新成功,一直報找不到資源錯誤,然后通過yum update libxcb,繼續運行沒有任何錯誤。
B.回到oracle用戶,執行下面內容
export LIBXCB_ALLOW_SLOPPY_LOCK=1
15進入界面安裝流程
(1)選擇Advanced Installation

(2) 下一步

(3)選擇Enterprise Edition

(4)下一步

(5)這里是Check你的安裝條件,必須全部通過,否則無法順利安裝

說明:
(1)首先這里可能出現一些問題,Checking operating system package requirements(也就是驗證操作系統包的完整性)雖然按照第6個流程安裝了所有包,但一些特殊情況有些包可能會遺漏,如果出現Error或者Warning一定要看下面的日志,那些包是Fail的,你直接使用yum命令安裝。
(2)有一個驗證網絡設置的選項,你可以通過vi編輯器打開/etc/hosts文件,把120.0.1修改成固定IP
(3)可能會出一些特殊的情況,這個和你本身的Linux版本,以及更新的包有關系,如果不行可以更新最新的,還是不行可以刪除對應報錯的包,然后安裝指定版本的。
(6)

(7)

(8)

(9)

(10)

(11)

(12)

(13)

(14)

說明:這里要注意的是,記得報錯后看日志,你可以看到因為什么原因報錯。我碰到過一個問題, 在Link pending...流程中拋出異常,然后我找到對應的日志,發現因為找不到一個叫/urs/lib/libstdc++.so.5的文件,而文件夾下僅僅只有一個叫libstdc++.so.6的文件,明顯版本比Orecla 10g指定的高,但Orecla 10g不認這個包。我使用ln命令解決了這個問題。命令:ln -s -f libstdc++.so.6 libstdc++.so.5。如果缺少包你也可以直接使用yum或者rpm命令安裝。
(15)

(16)

(17)

(18)

(19)

16 嘗試使用Oracle
命令如下:
>sqlplus
>userName:sysman
>passWord:******(第12步流程輸入的密碼)
SQL>select * from dba_tables where ROMNUM <= 10 (查出當前號下的所有表信息)
總結
在安裝過程中你可能遇到各類不同問題,網上也寫了一大堆,但是可能都不是你當前情況出現的問題,別急只要按Oracle本身的Install Guides去操作就可以了,其他問題基本上就屬于出現包需要更新,安裝類似的問題。 如果碰到特殊問題只要去網上查詢下,基本上能找到解決方案。