centos5.5上安裝oracle 11g R2[轉寄-參考用]

來源:互聯網
上載者:User

+ ------------------ CentOS 5.5上安裝配置oracle 11g R2  ----------------- +
+-------------------------------- by  kerryhu ----------------------------------+

一、運行環境
系統內容:centos 5.5 32位(圖形安裝)
硬碟分區:
/boot 150M
swap 4096M(最少要3G以上)
/ 10G
/home 5G
/tmp 5G
/usr 10G
/usr/local 10G
/var 10G
/opt 10G
/data 剩餘所有

df -h

#同步時鐘
yum -y install ntp
ntpdate time.nist.gov
echo "* */2 * * * /sbin/ntpdate time.nist.gov" >> /etc/crontab

關閉服務:
iptables
selinux
portmap
rpc.statd
cupsd
avahi-daemon
sendmail

killall iptables
chkconfig --level 2345 iptables off
killall portmap
chkconfig --level 2345 portmap off
killall avahi-daemon
chkconfig --level 2345 avahi-daemon off
killall sendmail
chkconfig --level 2345 sendmail off

二、安裝oracle 11gR2 依賴的組件包
#需要以下組件:
Downloading Packages:
(1/22): libaio-devel-0.3.106-5.i386.rpm                                               |  12 kB   
(2/22): numactl-devel-0.9.8-11.el5.i386.rpm                                           |  17 kB   
(3/22): elfutils-libelf-devel-0.137-3.el5.i386.rpm                                    |  24 kB  
(4/22): elfutils-libelf-devel-static-0.137-3.el5.i386.rpm                             |  66 kB 
(5/22): libgomp-4.4.4-13.el5.i386.rpm                                                 |  72 kB  
(6/22): libgcc-4.1.2-50.el5.i386.rpm                                                  |  96 kB   
(7/22): nscd-2.5-58.el5_6.3.i386.rpm                                                  | 167 kB   
(8/22): sysstat-7.0.2-3.el5_5.1.i386.rpm                                              | 170 kB  
(9/22): pdksh-5.2.14-36.el5.i386.rpm                                                  | 198 kB    
(10/22): compat-libstdc++-33-3.2.3-61.i386.rpm                                        | 232 kB 
(11/22): libstdc++-4.1.2-50.el5.i386.rpm                                              | 362 kB  
(12/22): glibc-headers-2.5-58.el5_6.3.i386.rpm                                        | 603 kB 
(13/22): unixODBC-devel-2.2.11-7.1.i386.rpm                                           | 739 kB  
(14/22): unixODBC-2.2.11-7.1.i386.rpm                                                 | 832 kB 
(15/22): kernel-headers-2.6.18-238.9.1.el5.i386.rpm                                   | 1.1 MB 
(16/22): glibc-devel-2.5-58.el5_6.3.i386.rpm                                          | 2.0 MB   
(17/22): cpp-4.1.2-50.el5.i386.rpm                                                    | 2.7 MB  
(18/22): libstdc++-devel-4.1.2-50.el5.i386.rpm                                        | 2.8 MB  
(19/22): gcc-c++-4.1.2-50.el5.i386.rpm                                                | 3.4 MB  
(20/22): gcc-4.1.2-50.el5.i386.rpm                                                    | 5.2 MB  
(21/22): glibc-2.5-58.el5_6.3.i686.rpm                                                | 5.3 MB 
(22/22): glibc-common-2.5-58.el5_6.3.i386.rpm 

yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh numactl-devel glibc-headers
/sbin/ldconfig

三、調整核心參數
vi /etc/sysctl.conf
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576

#讓核心參數生效
sysctl -p

#修改limits.conf
vi /etc/security/limits.conf
#oracle settings
oracle           soft    nproc   2047
oracle           hard    nproc   16384
oracle           soft    nofile  1024
oracle           hard    nofile  65536

#修改系統版本(Redhat 5.×系列系統略過這步)
cp /etc/redhat-release /etc/redhat-release.bk
vi /etc/redhat-release
#修改內容為:
Red Hat Enterprise Linux AS release 5 (Taroon)

#修改/etc/pam.d/login
#添加以下內容:
session    required     /lib/security/pam_limits.so
session    required     pam_limits.so

#修改/etc/profile
vi /etc/profile
#添加以下內容:
if [ $USER = "oracle" ]; then
   if [ $SHELL = "/bin/ksh" ]; then
      ulimit -p 16384
      ulimit -n 65536
   else
      ulimit -u 16384 -n 65536
   fi
fi

#修改/etc/csh.login
vi /etc/csh.login
#添加以下內容:
if ( $USER == "oracle" ) then
     limit maxproc 16384
     limit deors 65536
endif

四、建立oracle使用者
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle     #753951

mkdir -p /data/oracle
mkdir -p /data/oralnventory
mkdir -p /data/software
chown -R oracle:oinstall /data/oracle
chown -R oracle:oinstall /data/software
chown -R oracle:oinstall /data/oralnventory

#設定使用者環境變數
#su - oracle
$ vi .bash_profile
#添加以下內容:
ORACLE_SID=kerry; export ORACLE_SID
ORACLE_BASE=/data/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin; export PATH

ORACLE_BASE下是admin和product
ORACLE_HOME下則是ORACLE的命令、串連庫、安裝助手、listener等等一系列的東東。
這隻是ORACLE自己的定義習慣。ORACLE_HOME比ORACLE_BASE目錄要更深一些。也就是說:ORACLE_HOME=$ORACLE_BASE/product/version

ORACLE_BASE是oracle的根目錄,ORACLE_HOME是oracle產品的目錄。
簡單說,你如果裝了2個版本的oracle,那麼ORACLE_BASE可以是一個,但ORACLE_HOME是2個

全域資料庫名用於區別分散式資料庫各個不同機器上的執行個體。
SID用於區別同一台機器上的不同執行個體,
即一個用於外部區分。
一個用於內部區分。

$source .bash_profile

五、安裝oracle
#上傳oracle安裝檔案到/data/software目錄下,並解壓
cd /data/software
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
xhost +   #(這裡使用root使用者執行,一定要執行以下2步,如果沒有執行,將無法啟動圖形安裝介面)
xhost + localhost
su - oralce
cd /data/software/database
$./runInstaller  #(到oracle安裝檔案所在目錄執行該命令)

#方案口令:大寫字母+數字+小寫字母

#以root身份執行指令碼
su -
/data/oralnventory/orainstRoot.sh
/data/oracle/product/11.2.0/db_1/root.sh

六、開機啟動設定
#自動啟動和關閉資料庫執行個體和監聽
vi /oracle/oracle/product/11.2.0/db_1/bin/dbstart
ORACLE_HOME_LISTNER=$1
#修改為:
ORACLE_HOME_LISTNER=$ORACLE_HOME

vi /etc/init.d/oracle
#!/bin/sh
# chkconfig: 345 61 61
# description: Oracle 11g AutoRun Services
# /etc/init.d/oracle
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface

export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=kerry
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"

# if the executables do not exist -- display error

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
     echo "Oracle startup: cannot start"
     exit 1
fi

# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display

case "$1" in
start)
     # Oracle listener and instance startup
     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
     echo "Oracle Start Succesful!OK."
     ;;
stop)
     # Oracle listener and instance shutdown
     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
     echo "Oracle Stop Succesful!OK."
     ;;
reload|restart)
     $0 stop
     $0 start
     ;;
*)
     echo $"Usage: `basename $0` {start|stop|reload|reload}"
     exit 1
esac
exit 0

chmod 750 /etc/init.d/oracle
ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
chkconfig --level 345 oracle on
chkconfig --add oracle

#啟動oracle
service oracle start

#自動啟動和關閉 EM
vi /etc/init.d/oraemctl
#!/bin/sh
# chkconfig: 345 61 61
# description: Oracle 11g AutoRun Services
# /etc/init.d/oraemctl
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface

export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=kerry
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"

case "$1" in
start)
echo -n $"Starting Oracle EM DB Console:"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo "OK"
;;
stop)
echo -n $"Stopping Oracle EM DB Console:"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
echo "OK"
;;
*)
echo $"Usage: $0 {start|stop}"
esac

chmod 750 /etc/init.d/oraemctl
#啟動EM
service oraemctl start

七、安裝過程中排錯總結
#1、機器CPU如果是AMD64位,裝Linux32系統,再裝32位Oracle會出現netca無法執行的錯誤,網上說,需要打p8670579_112010_LINUX.zip這個補丁就可以了
#:http://www.megaupload.com/?d=6A29ZU8T


su - oracle
cd /data/software
unzip p8670579_112010_LINUX.zip
cd 8670579
/data/oracle/product/11.2.0/db_1/OPatch/opatch apply -invPtrLoc /data/oracle/product/11.2.0/db_1/oraInst.loc
#其中/apps/oracle/product/11.2.0/db_1/為ORACLE_HOME,可使用$ORACLE_HOME代替


#補丁打好後,點擊安裝程式的retry,繼續安裝即可。

#2、libail程式包缺失


yum -y install libaio-devel libaio
/sbin/ldconfig

#3、嚴重: 無法在指定的範圍內為以下進程分配連接埠: JMS [5540-5559],RMI [5520-5539],Database Control [5500-5519],EM Agent [3938] | [1830-1849]


#主機名稱與IP不對導致
vi /etc/hosts

http://kerry.blog.51cto.com/172631/568220

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.