RHEL5安裝oracle10g
一、
安裝環境
我是在vmware裏虛擬的RHEL5,分配的內存1G,SWAP分區1G,建議你最好把SWAP分區改成2G。否則安裝時,到了測試的步驟會提示監測失敗。(有人說如果強行安裝一樣沒問題,這個我沒有測試),我檢測swap沒有通過,本着都通過的原則,拋了塊磚,爭取引塊玉吧:
我找個英文的,用戶要用root噢~~
1.
choose
a location where you have lots of space (/usr comes to mind)
選擇你需要作爲增加交換分區的磁盤空間,這裏建議用usr。但是我建議,先看看那分區free
–m。
2. create a file the size you want the swap to
be:
dd if=/dev/zero
of=/usr/swap bs=1024 count=100000
(the above will
create a file 100Mb in size, so adjust the count as yousee fit)
/*Here may be
wrong. Comment by baif. */
翻譯: 建立一個你想要的分區空間(以在/usr/swap),命令爲:
>dd if=/dev/zero of=/usr/swap bs=1024(塊的大小block_size) count=10000(塊數量number_of_block)
註釋:判定新交換文件的大小,將(塊的大小block_size)乘以1024來判定塊的大小。例如,大小爲64MB的交換文件的塊大小爲65536。
3.
run
the command: mkswap /usr/swap
設置交換分區文件:mkswap /usr/swap。
4.
run
the command: swapon /usr/swap
立即啓用交換分區文件:#swapon /usr/swap
5.
check
w/ free that you just added 100Mb of swap
還是讓你free –m,看看空間成功沒有。
6.
if
you want this to be permanent through reboots, you'll need to add the
appropriate line to /etc/fstab
若要想使開機時自啓用,則需修改文件/etc/fstab中的swap行,
添加/usr/swap swap swap defaults 0 0
二、
安裝Oracle
10g Release2 前的配置
1.
安裝Oracle 10g R2所需的軟件包(謝謝一個網友Commandos提醒!這裏面用dvd的就比較方便了)
# cd
/mnt/cdrom/Server/
# rpm -Uvh
setarch-2*
# rpm -Uvh
make-3*
# rpm -Uvh
glibc-2*
# rpm -Uvh
libaio-0*
# rpm -Uvh
compat-libstdc++-33-3*
# rpm -Uvh
compat-gcc-34-3*
# rpm -Uvh
compat-gcc-34-c++-3*
# rpm -Uvh
gcc-4*
# rpm -Uvh
libXp-1*
# rpm -Uvh
openmotif22-*
# rpm -Uvh compat-db-4*
2.
修改/etc/redhat-release文件
因爲Oracle 10g官方只支持到RHEL4爲止,所以需要更改版本說明,編輯/etc/redhat-release文件,
刪除Red
Hat Enterprise Linux Server release 5 (Tikanga)
替換爲:Red
Hat Enterprise Linux AS release 4 (Nahant Update 4)
3.
修改內核參數
#vi /etc/sysctl.conf
kernel.shmmni = 4096
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
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
使更改立即生效,使用下面的命令:#sysctl
–p
4.
檢測磁盤、帳號和oracle安裝歷史
a)
驗證交換分區:grep SwapTotal /proc/meminfo
b)
檢測磁盤空間:df -l df -h df
-k /tmp/
c)
檢測是否安裝過oracle:more/etc/oraInst.loc
5.
建立安裝Oracle需要的用戶,組,及目錄
安裝oracle的目錄建議安裝在一個單獨的分區或者磁盤上。我這個是有點問題,不合乎FHS標準,以後再整理吧,)
a)
判斷dba和oinstall組是否存在: grep dba /etc/group
grep oinstall /etc/group-----這個是oracle的用戶組,一定要有。
b)
創建組:/usr/sbin/groupadd oinstall /usr/sbin/groupadd dba
c)
創建帳號:/usr/sbin/useradd -m -g oinstall -G dba oracle
d)
檢測帳號: id oracle (uid=501(oracle)
gid=501(oinstall) groups=501(oinstall),502(dba))
e)
設置口令: passwd oracle
f)
檢測是否存在:id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
g)
mkdir -p /u01/app/oracle -----軟件安裝位置
h)
mkdir -p /u02/oradata -----數據文件存放位置
i)
chown -R oracle:oinstall /u01
j)
chown -R oracle:oinstall /u01/app/oracle/
/u02/oradata/
k)
chmod -R 775 /u01/app/oracle/ /u02/oradata/
6.
設置oracle用戶的shell limit
#vi
/etc/security/limits.conf 增加如下內容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
接下來更改/etc/pam.d/login文件,添加下面的內容,使shell limit生效:
#vi /etc/pam.d/login
session required
/lib/security/pam_limits.so
session required
pam_limts.so
7.
配置IP地址
最好用靜態IP。要不檢測不會通過的,但是我改了也沒通過,一狠心,算了,過去了,沒事,哈哈~修改靜態:#vi /etc/sysconfig/network-scripts/ifcfg-eth0 中的 BOOTPROTO=static
8.
配置oracle用戶的環境變量和語言版本
注意:下面的操作,該用oracle用戶登陸執行了。
爲了防止安裝oracle時出現亂碼,先把語言環境改爲英文,在終端裏輸入: export LC_CTYPE=en_US.UTF-8
接下來,編輯/home/oracle目錄下的.bash_profile文件,添加如下內容:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export
ORACLE_HOME_LISTNER=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=base
export
PATH=$HOME/bin:$ORACLE_HOME/bin:${PATH}
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE
export
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export
CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native
export TEMP=/app/temp
export TMPDIR=/app/temp
export LANG=EN_US
unset USERNAME
umask 022
三、
安裝Oracle
10g
把10201_database_linux32.zip放在/opt目錄下,並通過#unzip
10201_database_linux32.zip解壓,現在使用oracle用戶到/opt/database目錄下執行安裝:
1.
選擇安裝類型,這裏選擇高級安裝(最下面的)。
2.
指定證書存放目錄。/u01/app/oracle/oraInventory
3.
選擇安裝的數據庫類型及oracle所支持的語言,這裏選擇企業版,語言選擇英文和簡體中文。(選擇Enterprise
Edition,語言要簡體中文的)
4.
指定oracle環境變量,安裝路徑。/u01/app/oracle/product/10.2.0/db_1
5.
Oracle開始進行安裝前的檢查工作
6.
選擇配置選項。(第一個,安裝數據庫)
7.
選擇創建的數據庫模式。(第一個,通用模式)
8.
指定數據庫配置的相關選項(SID:自己起、字符集:Unicode UTF-8)。
9.
選擇數據庫管理選項。(默認第二個,下一步)
10.
指定數據庫存儲選項。(/u02/oradata)
11.
指定數據庫備份回覆選項。(選一個不做,大家隨意)
12.
指定數據庫相關用戶密碼。(隨意)
13.
顯示安裝概要。(next吧~~)
14.
開始安裝。(等吧~~)
15.
上面的窗口點擊OK後。(一定要點,上面的窗口點擊OK後,會出現顯示的內容:需要root權限執行就可以了)
16.
安裝結束。
17.
安裝完成後,恢復語言環境以及版本信息
#export LC_CTYPE=zh_CN.UTF-8
#vi /etc/redhat-release
Red Hat
Enterprise Linux Server release 5 (Tikanga)
四、
手工和自動啓動數據庫與監聽
聲明:手動我沒成功過,靠。來自動的吧~
1.
使用root用戶修改/etc/oratab 文件:vi /etc/oratab,修改配置文件:SID名字:/Oracle/app/product/10.2.0/db_1:N爲orcl:/Oracle/app/product/10.2.0/db_1:Y
2.
使用Oracle用戶修改$Oracle_HOME/bin/dbstart文件:vi $Oracle_HOME/bin/dbstart 把其中的Oracle_HOME_LISTNER=什麼東西,刪掉,直接=$Oracle_HOME。
3.
以root修改增加配置文件,起名字叫oracle。。# vi /etc/rc.d/init.d/oracle
===== Script
====
#!/bin/bash
#
# chkconfig: 35
95 1
# description:
init script to start/stop oracle database 10g, TNS listener, EMS
# match these
values to your environment:
export
ORACLE_BASE=/u01/app/oracle
export
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export
ORACLE_TERM=xterm
export
PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATH
export
ORACLE_SID=demo1
export
DISPLAY=localhost:0
export
ORACLE_USER=oracle
# see how we
are called:
case $1 in
start)
su -
"$ORACLE_USER"<<EOO
lsnrctl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
emctl start dbconsole
EOO
touch
/var/lock/subsys/$scriptname
;;
stop)
su - "$ORACLE_USER"<<EOO
lsnrctl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
emctl stop dbconsole
EOO
rm -f /var/lock/subsys/scriptname
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
===========end
of script==============
4.
授權 :chown root.root /etc/rc.d/init.d/oracle
5.
修改文件屬性:chmod
755 /etc/rc.d/init.d/oracle
6.
啓動/關閉:# service oracle start # service oracle stop
五、
卸載(簡單,全是rm)
1.
運行
$ORACLE_HOME/bin/localconfig delete
2.
rm
-rf $ORACLE_BASE/*
3.
rm -f
/etc/oraInst.loc /etc/oratab
4.
rm
-rf /etc/oracle
5.
rm -f /etc/inittab.cssd
6.
rm -f
/usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenv
7.
刪除oracle用戶和組。
六、
結束語
這個是RHEL5上我親自安裝的,在4上面只要不修改版本,基本上都一樣。嘿嘿。