標籤:啟動服務 bash ble epo library linux limit snr base
一、硬體要求
1.記憶體與Sweap:記憶體2G(以上),Sweap 2G(以上)
記憶體: 1-2G 2-16G 16G以上
Sweap: 1.5倍記憶體 1倍記憶體 16G
檢查:# grep MemTotal /proc/meminfo
# grep SwapTotal /proc/meminfo
2.磁碟:20G以上
檢查:#df -h
二、軟體要求
作業系統:CentOS6.5(X86_64)
ORACLE版本:11gR2(X86_64)
:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
三、網路要求
設定靜態IP,將虛擬機器IP地址和真實主機IP地址設在同一IP段,其它(netmask,broadcast,gateway,dns)與主機保持一致(即可實現虛擬機器<--->主機;虛擬機器<---->互連網通訊)。
關閉防火牆、SELinux:
# setenforce 0 #SELinux臨時關閉命令
# service iptables stop #防火牆臨時關閉命令
四、安裝RPM依賴包
RPM安裝包列表:
binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)
方式:見http://www.92csz.com/study/linux/11.htm
連網安裝:
# yum search rpmkeyword
# yum install <package-name>
預設連網地址可以修改:vi /etc/yum.repos.d/CentOS-Base.repo
先下載後安裝:
RPM包拷貝到/opt目錄下(或使用wget命令)
# rpm -ivh <package-name>
csdn免積分:http://download.csdn.net/detail/u010011052/6260539
用rpm安裝存在依賴問題,建議如果可行,就用yum來安裝。
五、修改核心參數與系統資源限制
#vi /etc/sysctl.conf #末尾添加如下 :
net.ipv4.ip_local_port_range= 9000 65500
fs.file-max = 6815744
kernel.shmall = 10523004
kernel.shmmax = 6465333657
kernel.shmmni = 4096
kernel.sem = 250 32000 100128
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_max=1048576
fs.aio-max-nr = 1048576
# sysctl -p #從設定檔“/etc/sysctl.conf”載入核心參數設定
# sysctl -a #查看所有系統變數
# vi /etc/security/limits.conf #末尾添加如下 :
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
# vi /etc/pam.d/login #在session required pam_namespace.so 下面添加一條:
session required pam_limits.so
# 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
# vi /etc/hosts #否則在配置Oracle監聽時會出現問題而無法啟動,添加如下:
192.168.8.33 ORACLEDB #IP地址 主機名稱($HOSTNAME)
# xhost + #使所有使用者都能訪問圖形案頭
六、建立組和使用者
# groupadd -g 200 oinstall
# groupadd -g 201 dba
# useradd -u 440 -g oinstall -G dba oracle
# passwd oracle
# id oracle #查看oracle使用者
# vi /etc/sudoers #將oracle加入到sudo群組,在root ALL=(ALL) ALL 後添加:
oracle ALL=(ALL) ALL
七、建立ORACLE安裝目錄
# mkdir /opt/oracle/app/
# mkdir /opt/oracle/oradata/
# chmod 755 /opt/oracle/
# chmod 775 /opt/oracle/app/
# chown oracle.oinstall -R /opt/oracle/
八、設定環境變數
登出root ;用oracle帳號進入
$ vi ~/.bash_profile #~/表示的是目前使用者的根目錄/home/oracle,添加如下:
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/112
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl
$ source ~/.bash_profile #立即生效
$ export LANG=en_US.UTF-8 #更改字元集(.UTF-8不能少),否則會有中文亂碼
# env|more #查看配置的環境變數是否正確
九、解壓與安裝
$ cd /opt/oracle #/opt/oracle為安裝檔案存放目錄
$ unzip /media/linux_11gR2_database_1of2.zip
$ unzip /media/linux_11gR2_database_2of2.zip
$ cd database
$ ./runInstaller
選擇“進階安裝”,以指定字元集ZH16GBK。
安裝完成後,會出來一個對話方塊,提示使用root使用者執行這兩個指令碼
# /opt/oracle/oraInventory/oraioot.sh
# /opt/oracle/app/product/11.2.0/dbhome_1/root.sh
su –oracle
$ lsnrctl start #開啟監聽
$ sqlplus / as sysdba
SQL> startup #啟動資料庫
十、自啟動服務設定
# vi /etc/init.d/oracledb #編輯新增檔案如下:
# chkconfig: 35 80 10
# description: starts the oracle dabase deamons
# /etc/init.d/oracledb
ORACLE_HOME=/opt/oracle/112
ORACLE_OWNER=oracle
case "$1" in
start)
echo -n "Starting oracledb: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart"
touch /var/lock/subsys/oracledb
echo -n "Starting lsnr: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start"
echo -n "Starting dbconsole: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo
;;
stop)
echo -n "shutting down dbconsole: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
echo -n "shutting down lsnr: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop"
echo -n "shutting down oracledb: "
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut"
rm -f /var/lock/subsys/oracledb
echo
;;
restart)
echo -n "restarting oracledb: "
$0 stop
$0 start
echo
;;
*)
echo "Usage: `basename $0` start|stop|restart"
esac
其中35 80 10基於如下查詢:
[[email protected] rc.d]$ find -name ‘K*oracledb‘
./rc2.d/K10oracledb
./rc4.d/K10oracledb
./rc6.d/K10oracledb
./rc1.d/K10oracledb
./rc0.d/K10oracledb
[[email protected] rc.d]$ find -name ‘S*oracledb‘
./rc5.d/S80oracledb
./rc3.d/S80oracledb
[[email protected] rc.d]$ chkconfig --list oracledb
oracledb 0:off 1:off 2:off 3:on 4:off 5:on 6:off
如上oracledb檔案中前兩行注釋也可以不寫,可以採用檔案連結:
# ln -s /etc/init.d/oracledb /etc/rc.d/rc3.d/S80oracledb
# ln -s /etc/init.d/oracledb /etc/rc.d/rc5.d/S80oracledb
# ln -s /etc/init.d/oracledb /etc/rc.d/rc0.d/K10oracledb
# ln -s /etc/init.d/oracledb /etc/rc.d/rc1.d/K10oracledb
# ln -s /etc/init.d/oracledb /etc/rc.d/rc2.d/K10oracledb
# ln -s /etc/init.d/oracledb /etc/rc.d/rc4.d/K10oracledb
# ln -s /etc/init.d/oracledb /etc/rc.d/rc6.d/K10oracledb
# chmod 775 /etc/init.d/oracledb #改變檔案許可權
# chkconfig --level 35 oracle on #添加服務
# vi /etc/oratab #修改oracle啟動配置
orcl:/opt/oracle/112:Y #$ORACLE_SID:$ORACLE_HOME:<N|Y>:
Centos6.5_64位系統下安裝Oracle 11g