標籤:oracle oracle安裝 em
一、正常方式全新安裝1. oracle安裝環境準備
採用OEL5.8 x64安裝,安裝過程,選反自訂選中圖形介面,開發包,開發庫,老的軟體開發包等,一定要安裝,否則在安裝資料庫過程中報缺包錯誤,便資料庫的安裝無法進行下去。
對於不明環境沒有安裝開發包與開發庫的系統,可以採用如下方式安裝,最全。
本文出自:http://koumm.blog.51cto.com
# yum groupinstall ‘Development Tools‘
# yum groupinstall ‘Development Libraries‘
(1) 確認安裝以下包
# rpm -q --qf ‘%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n‘ binutils compat-libstdc++-33 compat-gcc-34-c++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel openmotif22 openmotif compat-db setarch libXp
binutils-2.17.50.0.6-20.el5 (x86_64)
compat-libstdc++-33-3.2.3-61 (x86_64)
compat-libstdc++-33-3.2.3-61 (i386)
compat-gcc-34-c++-3.4.6-4.1 (x86_64)
elfutils-libelf-0.137-3.el5 (x86_64)
elfutils-libelf-0.137-3.el5 (i386)
elfutils-libelf-devel-0.137-3.el5 (x86_64)
elfutils-libelf-devel-static-0.137-3.el5 (x86_64)
gcc-4.1.2-52.el5 (x86_64)
gcc-c++-4.1.2-52.el5 (x86_64)
glibc-2.5-81 (x86_64)
glibc-2.5-81 (i686)
glibc-common-2.5-81 (x86_64)
glibc-devel-2.5-81 (x86_64)
glibc-devel-2.5-81 (i386)
glibc-headers-2.5-81 (x86_64)
kernel-headers-2.6.18-308.el5 (x86_64)
ksh-20100621-5.el5 (x86_64)
libaio-0.3.106-5 (x86_64)
libaio-0.3.106-5 (i386)
package libaio-devel is not installed
libgcc-4.1.2-52.el5 (x86_64)
libgcc-4.1.2-52.el5 (i386)
libgomp-4.4.6-3.el5.1 (x86_64)
libgomp-4.4.6-3.el5.1 (i386)
libstdc++-4.1.2-52.el5 (x86_64)
libstdc++-4.1.2-52.el5 (i386)
libstdc++-devel-4.1.2-52.el5 (x86_64)
make-3.81-3.el5 (x86_64)
package sysstat is not installed
package unixODBC is not installed
package unixODBC-devel is not installed
package openmotif22 is not installed
package openmotif is not installed
package compat-db is not installed
setarch-2.0-1.1 (x86_64)
package libXp is not installed
# 掛載ISO檔案或光碟片
# mount /dev/cdrom /mnt
# cd /mnt/Server
#採用OEL5.8 X64安裝
rpm -ivh compat-db-4.2.52-5.1.i386.rpm compat-db-4.2.52-5.1.x86_64.rpm
rpm -ivh libaio-devel-0.3.106-5.x86_64.rpm libaio-devel-0.3.106-5.i386.rpm
rpm -ivh sysstat-7.0.2-11.el5.x86_64.rpm numactl-devel-0.9.8-12.0.1.el5_6.x86_64.rpm
rpm -ivh unixODBC-2.2.11-10.el5.x86_64.rpm unixODBC-devel-2.2.11-10.el5.x86_64.rpm unixODBC-libs-2.2.11-10.el5.x86_64.rpm
rpm -ivh unixODBC-2.2.11-10.el5.i386.rpm unixODBC-devel-2.2.11-10.el5.i386.rpm unixODBC-libs-2.2.11-10.el5.i386.rpm
rpm -ivh libXp-1.0.0-8.1.el5.i386.rpm libXp-1.0.0-8.1.el5.x86_64.rpm
rpm -ivh openmotif22-2.2.3-20.x86_64.rpm openmotif-2.3.1-6.el5.x86_64.rpm
#採用OEL5.10 X64安裝
rpm -ivh compat-db-4.2.52-5.1.i386.rpm compat-db-4.2.52-5.1.x86_64.rpm
rpm -ivh libaio-devel-0.3.106-5.x86_64.rpm libaio-devel-0.3.106-5.i386.rpm
rpm -ivh sysstat-7.0.2-12.0.1.el5.x86_64.rpm numactl-devel-0.9.8-12.0.3.el5_6.x86_64.rpm
rpm -ivh unixODBC-2.2.11-10.el5.x86_64.rpm unixODBC-devel-2.2.11-10.el5.x86_64.rpm unixODBC-libs-2.2.11-10.el5.x86_64.rpm
rpm -ivh unixODBC-2.2.11-10.el5.i386.rpm unixODBC-devel-2.2.11-10.el5.i386.rpm unixODBC-libs-2.2.11-10.el5.i386.rpm
rpm -ivh libXp-1.0.0-8.1.el5.i386.rpm libXp-1.0.0-8.1.el5.x86_64.rpm
rpm -ivh rpm -ivh openmotif22-2.2.3-20.x86_64.rpm openmotif-2.3.1-7.2.el5.x86_64.rpm
(2)替換sqlplus工具
# wget http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-0.37.tar.gz
# tar zxvf rlwrap-0.37.tar.gz
# cd rlwrap-0.37
# ./configure
# make && make install
注: 如安裝rlwrap會提示這個錯誤資訊,本例不會出現如下故障現像。
You need the GNU readline library(ftp://ftp.gnu.org/gnu/readline/ ) to build
this program!
這個時候,需要安裝
libtermcap-devel-2.0.8-46.1.i386.rpm
readline-devel-5.1-3.el5.i386.rpm
2. 建立使用者帳號
建立oinstall,dba組和oracle使用者.
建立使用者組和使用者的命令如下(用root身份):
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
mkdir -p /u01/app/oracle/product/10.2.0/db_1
chmod -R 775 /u01/app
chown -R oracle:oinstall /u01
3. 修改核心支援
# vi /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 359670
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
# sysctl -p
核心參數配置說明:
kernel.shmall = 2097152 # 系統可以使用的共用記憶體總頁數,預設值就是2097152。
kernel.shmmax = 2147483648 # 單個共用記憶體段的最大值,位元組為單位, 此例為2GB。
kernel.shmmni = 4096 # 共用記憶體段的最大預設數量
# 最大共用記憶體空間 = kernel.shmall * kernel.shmmni = 2097152*4K = 8G
# 由此可以計算作業系統最大共用記憶體空間並由上面兩個參數決定,例如一個共用記憶體為16G的系統,16G/kernel.shmmni(4K) = kernel.shmall 需要增大kernel.shmall
# 由於shmmax本例為2G大小,在分配共用記憶體段的時候會分配多個,例如 2G+2G+2G等這樣分配,不會超過最大共用記憶體空間,建議分配小於共用記憶體最大值,可以避免過多的建立共用記憶體段。
# 對於Oracle資料庫,SGA就是使用共用記憶體段空間,SGA的大小要小於最大共用記憶體空間,否則會報ORA-27102: out of memory,這時就需要查看以上參數是否合理。
4. 修改檔案描述符
cat >> /etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
5. 修改登陸認證模組
cat >> /etc/pam.d/login << EOF
session required /lib64/security/pam_limits.so
EOF
6. 修改本地hosts檔案
# vi /etc/hosts
192.168.14.180 node1
7. 修改oracle使用者環境變數(1) 配置系統內容變數,加入到最後。
cat >> /etc/profile << EOF
if [ \$USER = "oracle" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF
(2) 配置oracle環境變數
# su - oracle
cat >> /home/oracle/.bash_profile << EOF
export EDITOR=vi
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=\$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=\$ORACLE_HOME/bin:\$PATH
export NLS_LANG="Simplified Chinese_china.ZHS16GBK"
export LANG=en_US
export LC_ALL=en_US
export LD_LIBRARY_PATH=/lib:/usr/lib:\$ORACLE_HOME/lib
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"
umask 022
EOF
source .bash_profile
8. 拷貝oracle到linux系統中
# mv 10201_database_linux_x86_64.cpio.gz /u01/app/
# mv p8202632_10205_Linux-x86-64.zip /u01/app/
# gunzip 10201_database_linux_x86_64.cpio.gz
# cpio -idmv < 10201_database_linux_x86_64.cpio
# unzip p8202632_10205_Linux-x86-64.zip
# oracle安裝包解壓在/u01/app/database下
# oracle補丁包解壓在/u01/app/Disk1下
# chown -R oracle:oinstall /u01/app/database
9. oracle10安裝(1)vnc服務方式的安裝
# 對於伺服器在遠程機房裡的情況下的安裝,以前運行過vncserver,配置過密碼.
# vi /root/.vnc/xstartup
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome-session &
或直接取消上面unset以及與exec的注釋。
# vncserver :1
# vncserver -kill :1 關閉案頭號:1
(2) vnc用戶端串連開始安裝oracle資料庫軟體
# xhost +
access control disabled, clients can connect from any host
$ su - oracle
$ cd /u01/Oracle/database
$ ./runInstaller
# Redhat AS5下安裝,可採用如下方式忽略OS版本檢查。
$ ./runInstaller -ignoresysprereqs
最後要在root執行以下兩條指令碼
/u01/app/oracle/oraInventory/orainstRoot.sh
/u01/app/oracle/product/10.2.0/db_1/root.sh
(3) 安裝10.2.0.5補丁包
$ cd /u01/app/Disk1
$ ./runInstaller
安裝過程中提示root下執行如下指令碼
/u01/app/oracle/product/10.2.0/db_1/root.sh
10. 啟動監聽服務
$ netca
# 參數一律預設即可
11. 建立資料庫
$ dbca
# 進行資料庫的建立,下面列出的是一些注意事項
# 選擇gernel purpose,在SID和全域名稱中,選擇你在.bash_profile中建立的SID.
# 資料庫的字元集選項中選擇ZHS16GBK, Session串連數調大,redolog調大。其它預設OK,完成.
12. oracle的啟動服務配置
#開機自啟動採用rc.local啟動方式,沒有配置成服務方式,關閉資料庫還是手動執行的好。
$ vi /etc/oratab
#把最後的N改成Y (預設是N)
orcl:/u01/app/oracle/product/10.2.0/db_1:Y
# sed -i ‘s/:N/:Y/g‘ /etc/oratab
cat >> /etc/rc.local << EOF
# Oracle service start
su - oracle -c "lsnrctl start"
su - oracle -c "dbstart"
EOF
13. 應用em補丁
oracle打補丁後EM不能啟動的問題解決
Oracle 10.2.0.4(5)因為一個認證到期,導致2011.1.1日以後EM不能啟動,解決方案是應用補丁p8350262_10204_Generic.zip或者p8350262_10205_Generic.zip
$ emctl stop dbconsole
$ unzip p8350262_10204_Generic.zip
$ cd 8350262
$ /u01/app/oracle/product/10.2.0/db_1/OPatch/opatch apply
經過測試,對於新安裝的Oracle 10g資料庫,必須要先打以上補丁,然後再刪除EM,再重建EM就可以了。EM將正常啟動。
二、重新設定EM
說明: 必須按以下順序進行。
(1) 安裝中文字型。
# rpm -ivh ttfonts-zh_CN-2.14-6.noarch.rpm
(2) 重新設定em
常用以下兩個命令,在系統閒置時侯執行快:
$ emca -deconfig dbcontrol db -repos drop 刪除Database Control並同時刪除em資料庫
$ emca -config dbcontrol db -repos create 建立em資料庫並同時配製Database Control
(3) 登入訪問一下
https://192.168.14.180:1158/em/console/logon/logon
(4) 運行指令碼配置EM
說明:該指令碼需要在運行並登入之後才能執行。
/home/oracle/config.sh
#!/bin/bash
source /home/oracle/.bash_profile
cd $ORACLE_HOME/jdk/jre/lib/
mv font.properties font.properties.bak
cp font.properties.zh_CN.Redhat font.properties
cd $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/
rm *.gif
cd $ORACLE_HOME/jre/1.4.2/lib/
mv font.properties font.properties.bak
cp font.properties.zh_CN.Redhat font.properties
cd $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/
rm -rf *.gif
cd $ORACLE_HOME/javavm/lib/ojvmfonts/
mv font.properties font.properties.bak
cp font.properties.zh_CN.Redhat font.properties
(5) 測試關閉與啟動
$ emctl stop dbconsole
$ emctl start dbconsole
三、非正常方式全新安裝1. oracle安裝環境準備
採用OEL5.X X64安裝,安裝過程中只選中圖形介面,沒有安裝開發包,開發庫,老的軟體開發包等情況下的安裝由於缺少相關包,安裝過程會出錯。
# yum groupinstall ‘Development Tools‘
# yum groupinstall ‘Development Libraries‘
(1)確認安裝以下包
# rpm -q --qf ‘%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n‘ binutils compat-libstdc++-33 compat-gcc-34-c++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel openmotif22 openmotif compat-db setarch libXp
binutils-2.17.50.0.6-14.el5 (x86_64)
compat-libstdc++-33-3.2.3-61 (x86_64)
compat-libstdc++-33-3.2.3-61 (i386)
compat-gcc-34-c++-3.4.6-4.1 (x86_64)
elfutilsos-libelf-0.137-3.el5 (x86_64)
elfutils-libelf-0.137-3.el5 (i386)
elfutils-libelf-devel-0.137-3.el5 (x86_64)
elfutils-libelf-devel-static-0.137-3.el5 (x86_64)
gcc-4.1.2-50.el5 (x86_64)
gcc-c++-4.1.2-50.el5 (x86_64)
glibc-2.5-58 (x86_64)
glibc-2.5-58 (i686)
glibc-common-2.5-58 (x86_64)
glibc-devel-2.5-58 (x86_64)
glibc-devel-2.5-58 (i386)
glibc-headers-2.5-58 (x86_64)
package kernel-headers is not installed
ksh-20100202-1.el5_5.1 (x86_64)
libaio-0.3.106-5 (x86_64)
libaio-0.3.106-5 (i386)r
libaio-devel-0.3.106-5 (x86_64)
libgcc-4.1.2-50.el5 (x86_64)
libgcc-4.1.2-50.el5 (i386)
libgomp-4.4.4-13.el5 (x86_64)
libgomp-4.4.4-13.el5 (i386)
libstdc++-4.1.2-50.el5 (x86_64)
libstdc++-4.1.2-50.el5 (i386)
libstdc++-devel-4.1.2-50.el5 (x86_64)
make-3.81-3.el5 (x86_64)
sysstat-7.0.2-3.el5_5.1 (x86_64)
unixODBC-2.2.11-7.1 (x86_64)
unixODBC-devel-2.2.11-7.1 (x86_64)
openmotif22-2.2.3-18 (x86_64)
openmotif-2.3.1-5.el5_5.1 (x86_64)
compat-db-4.2.52-5.1 (x86_64)
setarch-2.0-1.1 (x86_64)
libXp-1.0.0-8.1.el5 (x86_64)
libXp-1.0.0-8.1.el5 (i386)
2. 避免njni10錯誤解決
由於作業系統沒有安裝開發包工具等,在安裝oracle10g時會出現如下錯誤。
執行netca或dbca時, "UnsatisfiedLinkError exception loading native library: njni10" 錯誤解決。
glibc和glibc-devel包32bit版本、64bit版需要安裝:
# rpm -Uvh glibc-*.i686.rpm glibc-devel-*.i386.rpm
# rpm -Uvh compat-libstdc++-33-3.2.3-61*.i386.rpm
安裝完32bit的glibc和glibc-devel後, 再對Oracle進行relink:
$ $ORACLE_HOME/bin/relink all
本文出自 “koumm的linux技術部落格” 部落格,請務必保留此出處http://koumm.blog.51cto.com/703525/1580315
Oracle Linux 5.8安裝Oracle 10.2.0.5 x64