在
Red Hat Linux AS 3.0
上安裝
Oracle10.1
1
權(quán)限需求
某些時(shí)候需要
root
權(quán)限,切換用戶使用命令
su - user
其中,
user
是需要切換的用戶名。
如果不是直接在本機(jī)上安裝
Oracle
,而通過
VNC
等工具進(jìn)行遠(yuǎn)程安裝,則需要執(zhí)行命令
xhost remote_host_name
,
該命令使遠(yuǎn)程機(jī)器能夠顯示本地
X Server
上的
X
應(yīng)用程序,其中
remote_host_name
是完全可被識(shí)別的遠(yuǎn)程機(jī)器的名字。如果想使所有的遠(yuǎn)程機(jī)器都能夠顯示本地
X Server
的
X
應(yīng)用,則需要執(zhí)行命令
xhost +
。
2
硬件需求
2.1
內(nèi)存
至少需要
512MB RAM
,使用命令
grep MemTotal /proc/meminfo
查看該信息。
2.2
交換空間
交換空間至少有
1G
,或者是
RAM
的
2
倍。如果交換空間大小不夠,可以設(shè)置臨時(shí)的交換空間,執(zhí)行命令如下:
su - root
dd if=/dev/zero of=tmpswap bs=1k count=900000
chmod 600 tmpswap
mkswap tmpswap
swapon tmpswap
刪除臨時(shí)交換分區(qū),可執(zhí)行如下命令:
su - root
swapoff tmpswap
rm tmpswap
2.3 /tmp
目錄
/tmp
目錄的大小至少要有
400M
,使用命令
df -k /tmp
查看。如果可用空間不足,可以通過如下命令創(chuàng)建另外一個(gè)新的臨時(shí)文件夾:
su - root
mkdir /<another_path>/tmp
//
在另一個(gè)目錄下新建一個(gè)
tmp
目錄
chown root.root /<another_path>/tmp
//
將新建的
tmp
目錄歸為
root
使用
chmod 1777 /<another_path>/tmp
//
改變?cè)?/span>
tmp
目錄的使用權(quán)限
export TEMP=/<another_path>
//
由
Oracle
的安裝用戶使用
export TMPDIR=/<another_path>
刪除創(chuàng)建的臨時(shí)
tmp
目錄,可以使用命令:
su - root
rmdir /<another_path>/tmp
unset TEMP
unset TMPDIR
2.4
硬盤空間
安裝
Oracle
需要的硬盤空間至少是
1.5G
,但最好大于
3.5G
,可以使用命令
df -k
查看該信息。
3
軟件需求
3.1
操作系統(tǒng)
可以使用
Red Hat Enterprise Linux AS/ES 3.0 (Update 2 or later)
,
Red Hat Linux 4.0
等等。
3.2 Kernel
版本
至少是
2.4.21
-15.ELsmp
,可以使用命令
uname -r
查看該信息。
3.3
其它的
RPM
包
make-3.79.1
gcc-3.2.3-34
glibc-2.3.2-95.20
glibc-devel-2.3.2-95.20
glibc-devel-2.3.2-95.20 (32 bit)
compat-db-4.0.14-5
compat-gcc-7.3-2.96.128
compat-gcc-c++-7.3-2.96.128
compat-libstdc++-7.3-2.96.128
compat-libstdc++-devel-7.3-2.96.128
gnome-libs-1.4.1.2.90-34.1 (32 bit)
openmotif21-2.1.30-8
setarch-1.3-1
libaio-0.3.96-3
libaio-devel-0.3.96-3
上述包都是
Oracle
官方推薦的,可以通過執(zhí)行以下命令來確認(rèn)相關(guān)的信息:
rpm -qa | grep xxx
// xxx
是想查找的包的名稱(不包括版本號(hào)),如
make
如果缺少某些包,則需要先獲得它們,然后再通過以下命令進(jìn)行安裝:
rpm -ivh yyy.rpm
// yyy
就是缺少的包的名稱(包括版本號(hào)),如
make-3.79.1
注意
:如果硬、軟件配置足夠高,以上步驟完全可以省略。對(duì)于軟件需求中的相關(guān)數(shù)據(jù),其實(shí)只是
Oracle
官方推薦的,不一定都要達(dá)到。在我的安裝中,
kernel
版本是
2.4.21
-4.ELsmp
,有些
rpm
的包的版本也沒有完全達(dá)到要求(但差別很小)。關(guān)鍵要看在安裝的過程中,是否會(huì)報(bào)錯(cuò)。
4
配置
Kernel
參數(shù)
執(zhí)行命令
vi /etc/sysctl.conf
以編輯
sysctl.conf
文件,在該文件的最后面添加如下內(nèi)容:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
添加了以上內(nèi)容之后按
Esc
鍵,再輸入
:wq
(保存并退出
vi
)
。最后再執(zhí)行命令
sysctl -p
使修改后的
sysctl
文件立即生效。這一步也是
Oracle
官方推薦的,目的是為了優(yōu)化系統(tǒng)性能。
5
創(chuàng)建
Oracle
用戶及組
su - root
groupadd dba
//
數(shù)據(jù)庫系統(tǒng)管理員的組
groupadd oinstall
// Oracle
文件所有者的組
useradd -c "Oracle software owner" -g oinstall -G dba oracle
passwd oracle
//
修改
oracle
用戶的密碼,輸入新命令
6
創(chuàng)建
Oracle
應(yīng)用程序的目錄
su - root
mkdir /opt/oracle
//
創(chuàng)建
Oracle Base
目錄
mkdir /opt/oracle/product
mkdir /opt/oracle/product/10.1
//
創(chuàng)建
Oracle Home
目錄
chown -R oracle.oinstall /opt/oracle
mkdir /var/opt/oracle
chown oracle.dba /var/opt/oracle
chmod 755 /var/opt/oracle
7
設(shè)置
Oracle
環(huán)境變量
先后執(zhí)行命令
su - oracle
和
vi .bash_profile
,在
.bash_profile
文件的最后面添加入以下內(nèi)容。
# Set the LD_ASSUME_KERNEL environment variable only for Red Hat 9 and
# for Red Hat Enterprise Linux Advanced Server 3 (RHEL AS 3) !!
# Use the "Linuxthreads with floating stacks" implementation instead of NPTL:
export LD_ASSUME_KERNEL=2.4.1
# Oracle Environment
export ORACLE_BASE=/opt/oracle
#
該值與第
6
節(jié)中創(chuàng)建的
Oracle Base
相同
export ORACLE_HOME=/opt/oracle/product/10.1
#
與第
6
節(jié)中創(chuàng)建的
Oracle Home
相同
export ORACLE_SID=orcl
# Oracle
數(shù)據(jù)庫的系統(tǒng)標(biāo)識(shí)符
export ORACLE_TERM=xterm
# export TNS_ADMIN= Set if sqlnet.ora, tnsnames.ora, etc.
# are not in $ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
#
設(shè)置
Oracle
中相關(guān)命令的
PATH
環(huán)境變量
export PATH=$PATH:$ORACLE_HOME/bin:/sbin:/tmp/OPatch
最后執(zhí)行命令
source .bash_profile
,使修改后
.bash_profile
文件立即生效。
8
安裝
Oracle10.1
本文使用的安裝文件是從
Oracle
官方網(wǎng)站下載的
ship.db.lnx32.cpio.gz
,安裝過程中需要執(zhí)行如下命令。
su - oracle
cd Install_Path
//
ship.db.lnx32.cpio.gz
文件所在的目錄
gunizp zxvf ship.db.lnx32.cpio.gz
//
解壓該文件,生成
ship_db_lnx32_10103.cpio
文件
cpio -idmv < ship_db_lnx32_10103.cpio
//
生成
Disk1
目錄,即
Oracle
安裝文件目錄
cd Disk1/install
sh runInstaller
//
運(yùn)行安裝程序,將會(huì)出現(xiàn)安裝向?qū)Ы缑?/span>
如果出現(xiàn)字體為亂碼的問題,則需要先后執(zhí)行命令
su - oracle
(如果已經(jīng)是在
oracle
用戶下了,則該命令可不執(zhí)行)
和
export LC_CTYPE=en_US.UTF-8
(或
export LC_ALL=en_US.UTF-8
),再執(zhí)行命令
sh runInstaller
就可以出現(xiàn)正常的安裝向?qū)Ы缑媪恕?br />
Oracle
主目錄位置與
第6
節(jié)創(chuàng)建的
Oracle
安裝目錄以及
第7
節(jié)中在
/etc/sysctl.conf
文件設(shè)置的
ORACLE_HOME
的值相同,全局?jǐn)?shù)據(jù)庫名則與
ORACLE_SID
保持一致。然后點(diǎn)擊
“
下一步
”
按鈕,
…
,其它的安裝過程如果沒有進(jìn)行特別地說明,使用默認(rèn)設(shè)置即可。
在安裝的過程中可能出現(xiàn)錯(cuò)誤:
Thrown when the IP address of a host cannot be determined
。這是由于安裝程序找不到本機(jī)的
IP
地址或主機(jī)名,此時(shí)就需要手動(dòng)設(shè)置
IP
或主機(jī)名。本文所遇到的情況是:
hostname
//
顯示主機(jī)名為
172.20.16.9
cat /etc/hosts
//
顯示
hosts
文件的內(nèi)容,其內(nèi)容如下所示
# Do not remove the following line, or various programs
# that require network functionality will fail.
#127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost.localdomain localhost
172.20.16.9 172.20.16.9
vi /etc/hosts
//
不能用
IP
作為主機(jī)名,用標(biāo)準(zhǔn)名(如
test
),修改后的內(nèi)容如下
# Do not remove the following line, or various programs
# that require network functionality will fail.
#127.0.0.1 localhost.localdomain localhost
127.0.0.1 localhost.localdomain localhost
172.20.16.9 test
在安裝的過程,會(huì)要求以
root
用戶身份執(zhí)行一些命令(一般會(huì)有兩次),如
/opt/oracle/product/10.1/root.sh
。此時(shí)只需要根據(jù)提示,再啟動(dòng)一個(gè)新的
Terminal
,在其中先后執(zhí)行命令
su
(如果已經(jīng)在
root
用戶下,可不執(zhí)行該命令)
和
/opt/oracle/product/10.1/root.sh
(或其它指定的命令)
就可以了。
9
啟動(dòng)
/
關(guān)閉
Oracle
服務(wù)器
方法
1
:
su - oracle
lsnrctl start
啟動(dòng)監(jiān)聽器時(shí)使用
lsnrctl stop
關(guān)閉監(jiān)聽器時(shí)使用
sqlplus /nolog
SQL > connect / as sysdba
SQL > startup
啟動(dòng)
Oracle
服務(wù)器時(shí)使用
shutdown immediate
關(guān)閉
Oracle
服務(wù)器時(shí)使用
方法
2
:
su - oracle
lsnrctl start
啟動(dòng)監(jiān)聽器時(shí)使用
lsnrctl stop
關(guān)閉監(jiān)聽器時(shí)使用
dbstart
啟動(dòng)服務(wù)器時(shí)使用
dbshut
關(guān)閉
Oracle
服務(wù)器時(shí)使用
其實(shí)方法
1
是啟動(dòng)
/
關(guān)閉
Oracle
服務(wù)器,方法
2
是啟動(dòng)
/
關(guān)閉系統(tǒng)中的
Oracle
服務(wù)。
10
卸載
Oracle
// ORACLE_HOME
與第
7
節(jié)中
ORACLE_HOME
的意義相同,如
/opt/oracle/product/10.1
cd ORACLE_HOME/oui/bin
sh runInstaller
執(zhí)行上述命令后又會(huì)出現(xiàn)安裝向?qū)Ы缑妫枰x擇
Deinstall
按鈕。再根據(jù)你的需要,指定將要被卸載的組件,或者卸載整個(gè)
Oracle
。