第一次接觸oracle,感覺很辛苦,光是裝一個(gè)oracle就這么費(fèi)事!暈了好幾次:)
好了,這是我安裝oracle時(shí)的筆記(參考了N多文檔)
Red Hat Enterprise Linux ES release 3 (Taroon) Kernel 2.4.21-4.EL ON on i6868
??Oracle9i Release 9.2.0.4
首先除了LINUX和ORACLE安裝盤之外,還要準(zhǔn)備一些補(bǔ)丁包:
p3095277_9204_LINUX.zip
下載地址:http://www.sh.nu/download/oracle/p305277_9204_LINUX.zip
p2617419_210_GENERIC.zip 、 p3006854_9204_LINUX.zip、
p3119415_9204_LINUX.zip、 P3238244_9204_LINUX.zip
下載地址:http://www.cnoug.org/viewthread. ... ghlight=&page=2http://www.itpub.net/showthread. ... 1583482#post1583482
http://www.opennet.ru/soft/ora_inst/
(一) Oracle公司聲稱在Linux下安裝Oracle9i數(shù)據(jù)庫至少要有512MB的內(nèi)存和至少1GB或者兩倍內(nèi)存大小的交換空間,哈哈!恰好我的機(jī)器剛好滿足它的最低要求,不過我聽說256M也能安裝ORACLE,本人對此深信不疑,當(dāng)系統(tǒng)內(nèi)存大于2GB的服務(wù)器,交換空間可以介于2GB—4GB之間。
? ?? ?? ? 要檢查內(nèi)存空間,在命令行方式(bash環(huán)境)下執(zhí)行如下命令:
grep MemTotal /proc/meminfo
要檢查交換空間,在命令行下執(zhí)行如下命令:
grep SwapTotal /proc/meminfo
第二點(diǎn)是主機(jī)名和IP地址最好要手動(dòng)設(shè)置
(二) 檢查系統(tǒng)下是否有以下軟件包
compat-libstdc++-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-db-4.0.14-5
compat-gcc-7.3-2.96.122
tcl-devel-8.3.5-92.i386.ipm
openmotif21-2.1.30-8
setarch-1.3-1
如果沒有可以采用#rpm –ivh ……rpm 來安裝,具體大多數(shù)在第三張盤上,還有,這些包有一定的依賴性,這就需要你來動(dòng)手試了。
(三) 添加安裝過程中需要用到的用戶和組,這當(dāng)中會用到二個(gè)用戶一個(gè)是root,一個(gè)是oracle
#groupadd oinstall
#groupadd dba
#useradd –g oinstall –G dba oracle
#passwd oracle
(四) 新建安裝目錄
#mkdir –p /opt/oracle/product/9.2.0
#chown –R oracle.oinstall /opt/oracle
#mkdir /var/opt/oracle
#chown oracle.dba /var/opt/oracle
#chmod 755 /var/opt/oracle
(五) 設(shè)置內(nèi)核參數(shù),調(diào)節(jié)信號燈及共享內(nèi)存
? ?? ?(1)設(shè)置內(nèi)核參數(shù),調(diào)節(jié)信號燈及共享內(nèi)存:
[root@sun root]# echo 250 32000 100 128 > /proc/sys/kernel/sem
[root@sun root]# echo 536870912 > /proc/sys/kernel/shmmax
[root@sun root]# echo 4096 > /proc/sys/kernel/shmmni
[root@sun root]# echo 2097152 > /proc/sys/kernel/shmall
[root@sun root]# echo 65536 > /proc/sys/fs/file-max
[root@sun root]# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
當(dāng)然為了一開機(jī)系統(tǒng)就能自動(dòng)幫你設(shè)好這些參數(shù),也可改動(dòng) /etc/sysctl.conf 這個(gè)文件,加入以下的語句:
??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
注意:如果你的共享內(nèi)存不夠大的話,在安裝的過程中會提示ORA-27123錯(cuò)誤,到時(shí)候你只要把/proc/sys/kernel/shmmax的值調(diào)大就可以了到于多大就看你的了
(六) oracle對文件的要求:
編輯文件:/etc/security/limits.conf 加入以下語句:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
(七)? ?設(shè)置oracle的環(huán)境
#su – oracle
$ vi ~/.bash_profile
export LD_ASSUME_KERNEL=2.4.1
export DISPLAY=”192.168.9.205:0.0” (127.0.0.1:0.0)
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/9.2.0
export ORACLE_SID=ora9i (數(shù)據(jù)庫全局變量名)
export ORACLE_TERM=xterm (xterm窗口模式 vt100 終端調(diào)試模式)
export NLS_LANG=AMERICAN (設(shè)置語言AMERICAN英文)
export ORACLE_OWNER=oracle
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data? ?
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/oracle/product/9.2.0/lib:/lib:/usr
/lib:/usr/local/lib
export PATH=/opt/ora9/product/9.2/bin:$PATH
export PATH=$PATH:$ORACLE_HOME/bin
然后注銷再重新登錄就可以,oracle 的環(huán)境就應(yīng)該生效了
(八)? ???#xhost +192.168.0.2 (本地IP地址)
(xhost disable訪問控制,客戶端可以從任何主機(jī)進(jìn)行連接)
這個(gè)命令用來保證oracle用戶調(diào)用X11,否則無法安裝
(九) 安裝
在安裝之前需要打一個(gè)補(bǔ)丁
為了應(yīng)用這個(gè)補(bǔ)丁,可以運(yùn)行:
$su – root
#unzip p3006854_9204_LINUX.zip
Archive:p3006854_9204_LINUX.zip
creating:3006854/
inflating:3006854/rhel3_pre_install.sh
inflating:3006854/README.txt
#cd 3006854
#sh rhel_pre_install.sh
Applying patch…
Patch successfully applied
新開一個(gè)窗口#su - oracle
在登錄終端中切換到oracle用戶:
在oracle主目錄里運(yùn)行:#/mnt/cdrom/install/linux/runinstaller
*********************************************************
安裝過程中的注意事項(xiàng):
1.在安裝中讓你輸入 UNIX group name:oinstall (#groupadd oinstall)
如果提示orainstRoot.sh權(quán)限問題,在root終端下執(zhí)行:
#sh /tmp/orainstRoot.sh 然后繼續(xù)
2.在安裝中選擇 software only 不要建數(shù)據(jù)庫
3. 安裝過程中提示/opt/oracle/product/9.2 權(quán)限問題,可另開窗口修改權(quán)限為oracle-dba
在結(jié)束的時(shí)候還會提示權(quán)限問題,另開窗口修改權(quán)限為root-root
注意的是以下幾點(diǎn):
Relink階段,會出兩個(gè)錯(cuò)誤:ins_oemagent.mk 和 ins_ctx.mk. 點(diǎn) Ignore 忽略. 不過在我安裝的過程中還有一個(gè)錯(cuò)誤會出現(xiàn)二次ins_rdbms.mk我選擇了忽略,如果有人知道這個(gè)錯(cuò)誤怎么修復(fù)請發(fā)信件告訴我
再安裝過程中,系統(tǒng)會提醒你用root身份去執(zhí)行兩個(gè)sh文件,再root的登錄終端中按提示操作就可以了
(十) 升級oracle
# su - oracle
安裝結(jié)束后,HTTPD會自動(dòng)運(yùn)行.在升級之前,需要將它停下來.
$ cd $ORACLE_HOME/Apache/Apache/bin
$ ./apachectl stop
./apachectl stop: httpd stopped
LISTENER也需要停下來.
$ lsnrctl stop
LSNRCTL for Linux: Version 9.2.0.1.0 - Production on 07-NOV-2003 16:25:41
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
The command completed successfully
注意: 如果不停的話,oracle會提示不能覆蓋文件.這個(gè)時(shí)候再去將服務(wù)停下來也可以,點(diǎn)Retry就可以了.
(十一) 打補(bǔ)丁
開始打補(bǔ)丁升級.
解包:
# unzip /home/oracle/p3095277_9204_LINUX.zip
Archive: p3095277_9204_LINUX.zip
inflating: 9204_lnx32_release.cpio
inflating: README.html
inflating: patchnote.css
# cpio –idmv < /home/ora9/Disk1/9204_lnx32_release.cpio
做完這個(gè)后,再切換到oracle用戶控制臺, 再次運(yùn)行/home/oracle/Disk1/runInstaller升級,注意必須先選擇最下面的安裝選項(xiàng),安裝OUI
要不然沒有辦法打那個(gè)最上面的升級補(bǔ)丁。
升級完OUI后,要退出
$ cd $ORACLE_HOME/bin
$ ./runInstaller
選擇第一個(gè)選項(xiàng),將Oracle升級到9.2.0.4。
這時(shí)候還是會有一個(gè)錯(cuò)誤出現(xiàn)ins_oemagent.mk,再次選擇忽略它,這個(gè)錯(cuò)誤會在9.0.2.4補(bǔ)丁包被應(yīng)用后由3119415_9204_LINUX.zip這個(gè)補(bǔ)丁修正。
為了安裝 opatch,可以運(yùn)行:
#su – oracle
$cp p2617419_210_GENERIC.zip /tmp
$cd /tmp
$unzip p2617419_210_GENERIC.zip
在應(yīng)用補(bǔ)丁 3119415 之前,請確信 oracle 用戶可以訪問fuser。否則,補(bǔ)丁不能被應(yīng)用,因?yàn)?opatch 要使用 fuser。
為了應(yīng)用補(bǔ)丁 3119415,可以運(yùn)行:
#su – oracle
$unzip p3119415_9204_LINUX.zip
$ cd 3119415
$export PATH=$PATH:/tmp/OPatch
$export PATH=$PATH:/sbin # the patch needs “fuser” which is located in /sbin
$which opatch
/tmp/OPatch/opatch
$opatch apply
(十二)創(chuàng)建數(shù)據(jù)庫
現(xiàn)在你可以使用 dbca 創(chuàng)建數(shù)據(jù)庫:
$su - oracle
#dbca
啟動(dòng)和停止 Oracle 9i 數(shù)據(jù)庫 (Startup and Shutdown of the Oracle 9i Database)
1.sqlplus:
Oracle 9i (9.0.1 & 9.2.0) 不再使用 svrmgrl,而改用 sqlplus。
例如,啟動(dòng)數(shù)據(jù)庫,可以運(yùn)行下面的命令:
#su – oracle
$sqlplus /nolog
SQL>connect / as sysdba
SQL>startup
斜杠 (/ -- slash) 使用 SYS 連接到方案 (schema)。本例中,將使用 SYS 數(shù)據(jù)庫用戶以 SYSDBA 身份連接到方案。SYSDBA 賦予用戶如下特權(quán):
- sysoper privileges WITH ADMIN OPTION
- create database
- recover database until
立即停止數(shù)據(jù)庫,可以運(yùn)行下面的命令:
#su – oracle
$sqlplus /nolog
SQL>connect / as sysdba
SQL>shutdown –immediate
2.$ORACLE_HOME/bin/dbstart 和 $ORACLE_HOME/bin/dbshut
也可以使用 $ORACLE_HOME/bin/dbstart 啟動(dòng)數(shù)據(jù)庫,使用 $ORACLE_HOME
/bin/dbshut 停止數(shù)據(jù)庫。甚至可以將 $ORACLE_HOME/bin/dbstart 寫入 /etc/rc.d/rc. local 啟動(dòng)腳本,當(dāng)系統(tǒng)啟動(dòng)時(shí),自動(dòng)啟動(dòng)數(shù)據(jù)庫。為了使 $ORACLE_HOME/bin/dbstart 和 $ORACLE_HOME/bin/dbshut 正常工作,需要將 /etc/oratab 文件中第 3 個(gè)字段的值由 N 改為 Y。
Oracle RAC 數(shù)據(jù)庫創(chuàng)建過程中的注意事項(xiàng)
· ORA-29807 錯(cuò)誤
在數(shù)據(jù)庫創(chuàng)建過程的“創(chuàng)建數(shù)據(jù)字典視圖”階段中,您將接收到一個(gè) ORA-29807 錯(cuò)誤。如果您搜索日志文件,您將看到以下內(nèi)容:
drop operator XMLSequence
*
ERROR at line 1:
ORA-29807:specified operator does not exist
這是一個(gè)已知的問題 (Bug:2686156),并且可被忽略。要繼續(xù)數(shù)據(jù)庫創(chuàng)建過程,請單擊 "Ignore" 按鈕:
· ORA-01430 錯(cuò)誤
在數(shù)據(jù)庫創(chuàng)建過程的“增加 Oracle Spatial”階段中,您將接收到一個(gè) ORA-01430 錯(cuò)誤。如果您搜索日志文件,您將看到以下內(nèi)容:
(SDO_ROOT_MBR mdsys.sdo_geometry)
*
ERROR at line 2:
ORA-01430:column being added already exists in table
這是一個(gè)已知的問題,并可被忽略。要繼續(xù)數(shù)據(jù)庫創(chuàng)建過程,請單擊 "Ignore" 按鈕:
posted on 2007-05-11 12:52
無聲 閱讀(1445)
評論(0) 編輯 收藏 所屬分類:
職場生活