在RED HAT ENTERPRICE LINUX4 上安裝ORACLE 10G (10.2.0.1.0)
第一步 準(zhǔn)備工作
? 檢查內(nèi)存
SZ_TOMCAT:/home/xjy/soft> grep SwapTotal /proc/meminfo
SwapTotal: 2031608 kB
? 檢查內(nèi)核
Linux reaky.com 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux
? 檢查軟件包
SZ_TOMCAT:/home/xjy/soft> rpm -q gcc make binutils glibc libaio
gcc-3.4.3-9.EL4
make-3.80-5
binutils-2.15.92.0.2-10.EL4
glibc-2.3.4-2
libaio-0.3.102-1
SZ_TOMCAT:/home/xjy/soft> rpm -q openmotif
openmotif-2.2.3-6.RHEL4.2
setarch-1.6-1
檢查內(nèi)核參數(shù)
sysctl –a
然后在/ETC/sysctl.conf中添加
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
net.core.rmem_default = 262144
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
執(zhí)行/sbin/sysctl –p
中文化顯示工作
修改/etc/sysconfig/i18n文件,改為
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-:en_US:en"
SYSFONT="lat0-sun16"修改/etc/sysconfig/i18n文件,改為
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-:en_US:en"
SYSFONT="lat0-sun16"
第二步:
? 創(chuàng)建用戶
su – root
[root@reaky etc]# groupadd dba
[root@reaky etc]# groupadd oinstall
[root@reaky etc]# useradd -c "Oracle software owner" -g oinstall -G dba oracle
? 設(shè)置環(huán)境
編輯/home/oracle/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
alias ls='ls -CF'
PS1='SZ_TOMCAT:$PWD> '; export PS1
umask 022
set -o vi
stty intr '^c'
stty -istrip
#if [ $USER = "oracle" ]; then
# if [ $SHELL = "/bin/ksh" ]; then
# ulimit -p 16384
# ulimit -n 65536
# else
# ulimit -u 16384 -n 65536
# fi
#fi
EDITOR=vi; export EDITOR
TEMP=/tmp; export TEMP
TMPDIR=/tmp; export TMPDIR
### SETUP ORACLE ENVIRONMENT ###
ORACLE_SID=ora10; export ORACLE_SID
ORACLE_BASE=/home/oracle;
export ORACLE_BASE
ORACLE_HOME=/home/oracle/product/10.2.0; export ORACLE_HOME
ORACLE_TERM=ansi;
export ORACLE_TERM
JAVA_FONTS=/usr/share/fonts/zh_CN/TrueType/; export JAVA_FONTS
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
PATH=.:$ORACLE_HOME/bin:$PATH
export PATH
### FOR ORACLE INSTALL ###
export LC_ALL="en_US"
export LC="en_US"
第三步、安裝Oracle10g
1.開始Oracle普通安裝
以oracle用戶登錄linux,加載oracle Oracle10g光盤, 在執(zhí)行runInstaller前,確定Oracle環(huán)境變量已經(jīng)設(shè)置,可以執(zhí)行如下命令檢驗(yàn)環(huán)境變量的設(shè)置:
oracle 用戶登陸
$set
在終端命令窗口,執(zhí)行如下命令,開始o(jì)racle10g的安裝:
oracle$/mnt/cdrom/runInstaller
2.在歡迎窗口界面: 點(diǎn)擊“下一步”按鈕
3.指定Inventory 路徑和身份證明窗口:
inventory路徑是: /home/oracle/oraInventory
指定操作系統(tǒng)組名: oinstall
點(diǎn)擊“下一步”按鈕
4.這時(shí)會(huì)彈出一個(gè)執(zhí)行orainstRoot.sh 腳本的窗口:
打開另一個(gè)終端,以root用戶執(zhí)行如下命令:
su – root
cd /home/oracle/oraInventory
./orainstRoot.sh
然后,切換到oracle安裝窗口,點(diǎn)擊“繼續(xù)”按鈕
5. 在指定文件位置窗口彈出后,指定相應(yīng)的路徑:
源:
路徑: /mnt/cdrom/stage/products.xml
目的:
名稱: OraDb10g_home1
路徑: /home/oracle/product/10.1.0/db_1
然后,點(diǎn)擊“下一步”按鈕
6.選擇安裝類型:
選擇"企業(yè)版"選項(xiàng),然后點(diǎn)擊“下一步”按鈕。安裝程序驗(yàn)證系統(tǒng)是否符合安裝和配置所選產(chǎn)品的所有最低要求
7. 安裝程序驗(yàn)證系統(tǒng)是否符合安裝和配置所選產(chǎn)品的所有最低要求。當(dāng)檢測(cè)完成并成功后,點(diǎn)擊“下一步”按鈕
8. 選擇數(shù)據(jù)庫(kù)設(shè)置:
選擇"通用"選項(xiàng),然后點(diǎn)擊“下一步”按鈕
9.指定數(shù)據(jù)庫(kù)配置參數(shù):
全局?jǐn)?shù)據(jù)庫(kù)名稱: "test".
SID: "test".
選中“創(chuàng)建帶樣本方案的數(shù)據(jù)庫(kù)”復(fù)選框,然后,點(diǎn)擊“下一步”按鈕
10.選擇數(shù)據(jù)庫(kù)管理設(shè)置:
選擇"使用 Database Control管理數(shù)據(jù)庫(kù)"。
然后,點(diǎn)擊“下一步”
11.指定數(shù)據(jù)庫(kù)文件存儲(chǔ)選項(xiàng)
選擇 "文件系統(tǒng)"選項(xiàng).
指定數(shù)據(jù)庫(kù)路徑: /home/oracle/oradata/
然后點(diǎn)擊“下一步”按鈕,
12.指定備份和恢復(fù)選項(xiàng):
選擇"不啟用自動(dòng)備份".
點(diǎn)擊 “下一步”按鈕
13.指定數(shù)據(jù)庫(kù)方案口令:
可以為SYS、SYSTEM、SYSMAN、DBSNMP單獨(dú)指定口令,或選擇"所有用戶使用同一口令"選項(xiàng).為這些用戶指定同一個(gè)口令。
指定口令不要以數(shù)字開始,否則會(huì)得到錯(cuò)誤信息.然后點(diǎn)擊 “下一步”按鈕
14. 出現(xiàn)概要窗口后, 點(diǎn)擊“安裝”按鈕
15. 這時(shí)你會(huì)看到數(shù)據(jù)庫(kù)安裝過(guò)程窗口,然后會(huì)出現(xiàn)輔助設(shè)置窗口,再出現(xiàn)數(shù)據(jù)庫(kù)創(chuàng)建窗口。
16. 數(shù)據(jù)庫(kù)創(chuàng)建完畢,彈出數(shù)據(jù)庫(kù)創(chuàng)建完成窗口,點(diǎn)擊Ok按鈕。
當(dāng)彈出一個(gè)執(zhí)行root.sh腳本的窗口時(shí)在另一個(gè)終端執(zhí)行如下命令:
su – root
cd /home/oracle/product/10.1.0/db_1
./root.sh
點(diǎn)擊確定”按鈕
17. 在概要安裝完畢,會(huì)報(bào)告一個(gè)發(fā)現(xiàn)$ORACLE_BASE/product/10.1.0/db_1/portlist.ini文件,這時(shí)點(diǎn)擊OK按鈕
18. 安裝結(jié)束:
點(diǎn)擊“退出”按鈕,結(jié)束安裝程序。
六、數(shù)據(jù)庫(kù)的啟動(dòng)和停止
要使數(shù)據(jù)庫(kù)啟動(dòng),執(zhí)行如下命令:
oracle$ sqlplus /nolog
SQL> connect / as sysdba
SQL> startup
要使數(shù)據(jù)庫(kù)停止,執(zhí)行如下命令:
oracle$ sqlplus /nolog
SQL> connect / as sysdba
SQL> shutdown
刪除oracle10g
如果oracle10ganzhuang過(guò)程中出現(xiàn)錯(cuò)誤,需要重新安裝,可以執(zhí)行如下命令刪除以前安裝的oracle:
su –oracle
rm –rf /home/oracle/*
rm –f /etc/oraInst.loc /etc/oratab /etc/oracle
su –root
export ORACLE_HOME=/home/oracle/product/10.1.0/db_1
$ORACLE_HOME/bin/localconfig delete
rm –f /etc/inittab.cssd
rm –f /usr/local/bin/coraenv /usr/local/bin/dbhome
rm –f /usr/local/bin/oraenv
執(zhí)行完上述命令后,重新啟動(dòng)系統(tǒng),可以重新安裝oracle10g數(shù)據(jù)庫(kù)系統(tǒng)
FAQ (在Linux平臺(tái)安裝Oracle比較常見的問(wèn)題)
1. 不能啟動(dòng)安裝界面
運(yùn)行runInstaller提示信息類似如下:
xlib:connection to "localhost:0.0" refused by server
xlib:client is not authorized to connect to server
Exception in thread "main" java.lang.InternalError:
can't connect to x11 window server using "localhost:0.0" at .......
解決辦法: 設(shè)定你的DISPLAY環(huán)境參數(shù).
# export DISPLAY= your_IPaddress :0.0
把your_IPaddress換成你的IP.或者用root簡(jiǎn)單的執(zhí)行一下# xhost + (要注意這樣會(huì)有安全上的隱患)
2.安裝界面顯示很多"口口"樣子的亂碼
解決辦法:查看locale輸出
# locale
LANG=en_US.UTF-8
LC_CTYPE=zh_CN.GB18030
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
執(zhí)行#export LC_CTYPE=en_US.UTF-8 然后重新調(diào)用安裝程序.
3. 用IE登錄Linux服務(wù)器上的em出現(xiàn)亂碼
在Linux(Unix) 環(huán)境下成功安裝了Oracle 10g,從windows下用IE瀏覽器登錄 10g 的em, 按鈕是"口口"這樣的方框.
解決辦法: 參考:
http://www.dbanotes.net/Oracle/Oracle-10g-font.properties.htm
4.創(chuàng)建數(shù)據(jù)庫(kù)的時(shí)候出現(xiàn)ORA-03113的錯(cuò)誤
解決辦法: 查看核心參數(shù)是否調(diào)整正確.參考:
http://www.dbanotes.net/Oracle/ORA-03113.htm
5. RedHat 9 / FC1等系統(tǒng)10g不支持如何安裝?
解決辦法:在10g不支持的Linux發(fā)行版上安裝10g的解決方法
1). 運(yùn)行runInstaller -ignoreSysPrereqs,這樣會(huì)跳過(guò)檢查.
2). 摘自 www.puschitz.com 修改/etc/redhat-release文件:
#su - root
#cp /etc/redhat-release /etc/redhat-release.backup
#cat > /etc/redhat-release << EOF
Red Hat Enterprise Linux AS release 3 (Taroon)
EOF
安裝完畢,執(zhí)行如下操作:
#su - root
#cp /etc/redhat-release.backup /etc/redhat-release
3). http://www.dbanotes.net/Oracle/10G-Beta-Install-Bug.htm
同樣的思路,我們可以修改Oracle 的install/oraparam.ini文件達(dá)到目的.
6.如何關(guān)掉那些 ocssd.bin 進(jìn)程?
解決辦法:編輯/etc/inittab文件(做好備份)
注釋掉這一行:
h1:3:respawn:/etc/init.d/init.cssd run >/dev/null 2>................
---------------------------------------------------------------------------------------------------------------------
參考信息
http://blog.csdn.net/itsdn/archive/2007/05/21/1619114.aspx
:
1、在 Linux x86 上安裝Oracle數(shù)據(jù)庫(kù)10g
http://www.oracle.com/technology/global/cn/pub/articles/smiley_10gdb_install.html#rhel3
2、Oracle 10gR2 + RedHat Enterprise Linux AS4 安裝
http://www.linuxdiyf.com/viewarticle.php?id=11578
3、Oracle 10g For Linux安裝手冊(cè)
http://bbs.database.ccidnet.com/htm_data/27/0607/112610.html
4、Installing Oracle 10g on RHEL AS 3 Step-by-Step
http://www.dbanotes.net/Oracle/Install-Oracle10g-RHEL3.htm
/etc/rc.d/init.d/dbora文件內(nèi)容
#http://staff.in2.hr/denis/oracle/10g1install_fedora3_en.html#n4_4
# chkconfig: 0356 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_SID=CQRCDATA
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_USER=oracle
# see how we are called:
case $1 in
start)
dltelecom - "$ORACLE_USER" -c "$ORACLE_HOME/bin/dbstart"
dltelecom - "$ORACLE_USER" -c "$ORACLE_HOME/bin/emctl start dbconsole"
dltelecom - "$ORACLE_USER" -c "SORACLE_HOME/bin/isqlplusctl start"
;;
stop)
dltelecom - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop"
dltelecom - $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"
dltelecom - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac