您好,登錄后才能下訂單哦!
1、 VMware Workstation 10 搭建 CentOS 7 x64位虛擬機,CentOS7操作系統最小化安裝,2G內存,20G磁盤空間,1核CPU,已配置好網絡IP:192.168.1.30
2、 已下載Oracle 11gLinux安裝文件:linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.zip
3、 通過XmanagerXftp上傳到虛擬機/tmp目錄中。
使用root用戶登錄操作系統
yum 安裝 unzip 軟件,用來解壓上傳的Oracle安裝文件。
[root@CentOS ~]#yum install unzip –y
解壓Oracle 安裝程序
[root@CentOS~]#cd /data/oracle/oraclesetup
[root@CentOS tmp]#unzip linux.x64_11gR2_database_1of2.zip && unziplinux.x64_11gR2_database_2of2.zip
等待解壓完成后,會在/data/oracle/oraclesetup目錄下生產一個database文件夾,里面就Oracle11g安裝文件。
Yum 安裝vim軟件,用于編輯配置文件(個人習慣,不安裝vim,使用vi也可以)。
[root@CentOStmp]#yum install vim -y
在/etc/hosts文件中添加主機名
[root@CentOS tmp]# vim /etc/hosts
添加192.168.206.135 CentOS
關閉selinux
[root@CentOS tmp]# vim /etc/selinux/config
設置SELINUX=disabled
[root@CentOS tmp]# setenforce 0
關閉防火墻
[root@CentOS tmp]# service iptables stop
[root@CentOS ~]# systemctl stop firewalld
[root@CentOS ~]# systemctl disable firewalld
安裝Oracle 11g依賴包
[root@CentOS tmp]# yum install gcc make binutils gcc-c++ compat-libstdc++-33elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-develnumactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y
添加安裝用戶和用戶組
[root@CentOS tmp]# groupadd oinstall
[root@CentOS tmp]# groupadd dba
[root@CentOS tmp]# useradd -g oinstall -G dba oracle
[root@CentOS tmp]# passwd oracle
[root@CentOS tmp]# id oracle
uid=1001(oracle) gid=1001(oinstall) 組=1001(oinstall),1002(dba)
修改內核參數配置文件
[root@CentOS ~]# vim /etc/sysctl.conf
添加以下內容
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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
[root@CentOS ~]# sysctl -p
其中kernel.shmmax = 1073741824為本機物理內存(2G)的一半,單位為byte。
修改用戶的限制文件
[root@CentOS ~]# vim /etc/security/limits.conf
添加以下內容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
修改/etc/pam.d/login文件:
[root@CentOS ~]# vim /etc/pam.d/login
添加以下內容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
修改/etc/profile文件:
[root@CentOS ~]# vim /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
創建安裝目錄和設置文件權限
[root@CentOS ~]# mkdir -p /data/oracle/product/11.2.0
[root@CentOS ~]# mkdir /data/oracle/oradata
[root@CentOS ~]# mkdir /data/oracle/inventory
[root@CentOS ~]# mkdir /data/oracle/fast_recovery_area
[root@CentOS ~]# chown -R oracle:oinstall /data/oracle
[root@CentOS ~]# chmod -R 775 /data/oracle
設置oracle用戶環境變量
[root@CentOS ~]# su - oracle
[oracle@CentOS ~]$ vim .bash_profile
添加如下內容:
ORACLE_BASE=/data/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=ora11
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SIDPATH
注意,標紅處必須與創建的數據庫實例名稱一致,否則數據庫啟動后無法訪問。
編輯靜默安裝響應文件
[oracle@CentOS ~]$ cp -R /data/oracle/oraclesetup/database/response/ .
[oracle@CentOS ~]$ cd response/
[oracle@CentOS response]$ vim db_install.rsp
需要設置的選項如下:
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=CentOS
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/data/oracle/product/11.2.0
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
[oracle@CentOS response]$ cd /data/oracle/oraclesetup/database/
[oracle@iZwz93mxkrdvotp49mmzfjZ database]$ ./runInstaller -silent -responseFile/data/oracle/response/db_install.rsp -ignorePrereq
如果執行以上命令出錯,會提示有參數格式,按照提示參數格式修改修改即可,一般是由于word中的字體、符號格式復制到客戶端命令行后不一致引起,修改即可
開始Oracle在后臺靜默安裝。安裝過程中,如果提示[WARNING]不必理會,此時安裝程序仍在后臺進行,如果出現[FATAL],則安裝程序已經停止了。
可以在以下位置找到本次安裝會話的日志:
/data/oracle/inventory/logs/installActions2015-06-08_04-00-25PM.log
可以切換終端執行top命令查看后臺進程一直是在安裝的,/u01目錄也在不斷增大,
當出現以下提示時,代表安裝成功:
按照要求執行腳本。
打開終端,以root身份登錄,執行腳本:
[root@CentOS~]# sh /data/oracle/inventory/db_1/orainstRoot.sh
[root@CentOS~]# sh /data/oracle/product/11.2.0/db_1/root.sh
重新使用oracle用戶登錄
[oracle@iZwz93mxkrdvotp49mmzfjZ~]$ netca /silent /responseFile /data/oracle/response/netca.rsp
注意此處,必須使用/silent /responseFile格式,而不是-silent -responseFile,因為是靜默安裝
成功運行后,在/data/oracle/product/11.2.0/db_1/network/admin/中生成listener.ora和sqlnet.ora
通過netstat命令可以查看1521端口正在監聽。
Yum安裝netstat軟件,軟件包是在net-tools中。
[root@CentOS~]# yum install net-tools
[root@CentOS~]# netstat -tnulp | grep 1521
[oracle@CentOS~]$ vim /data/oracle/response/dbca.rsp
設置以下參數:
GDBNAME= "ora11"
SID =" ora11"
SYSPASSWORD= " system@2016"
SYSTEMPASSWORD= "system@2016"
SYSMANPASSWORD= " system@2016"
DBSNMPPASSWORD= " system@2016"
DATAFILEDESTINATION=/data/oracle/oradata
RECOVERYAREADESTINATION=/data/oracle/fast_recovery_area
CHARACTERSET= "ZHS16GBK"
TOTALMEMORY= "1638"
其中TOTALMEMORY ="1638" 為1638MB,物理內存2G*80%。
進行靜默配置:
[oracle@CentOS~]$ dbca -silent -responseFile /data/oracle/response/dbca.rsp
建庫后進行實例進程檢查:
[oracle@CentOS~]$ ps -ef | grep ora_ | grep -v grep
查看監聽狀態:
[oracle@CentOS~]$ lsnrctl status
登錄查看實例狀態:
[oracle@CentOS~]$ sqlplus / as sysdba
SQL> select status from v$instance;
修改/data/oracle/product/11.2.0/bin/dbstart
[oracle@CentOS~]$ vim /data/oracle/product/11.2.0/bin/dbstart
將ORACLE_HOME_LISTNER=$1修改為ORACLE_HOME_LISTNER=$ORACLE_HOME
修改/data/oracle/product/11.2.0/bin/dbshut
[oracle@CentOS~]$ vim /data/oracle/product/11.2.0/bin/dbshut
將ORACLE_HOME_LISTNER=$1修改為ORACLE_HOME_LISTNER=$ORACLE_HOME
修改/etc/oratab文件
[oracle@CentOS~]$ vim /etc/oratab
將orcl:/data/oracle/product/11.2.0:N中最后的N改為Y,成為orcl:/data/oracle/product/11.2.0:Y
輸入命令dbshut和dbstart測試
[oracle@CentOS~]$ dbshut
Oracle監聽停止,進程消失。
[oracle@CentOS~]$ dbstart
Oracle監聽啟動,進程啟動。
切換到root賬戶建立自啟動腳本
[oracle@CentOS~]$ su -
[root@CentOS~]# vim /etc/rc.d/init.d/oracle
添加以下內容(有些值如ORACLE_HOME和ORACLE_USER等根據實際情況可以修改):
#!/bin/bash
#oracle: Start/Stop Oracle Database 11g R2
#chkconfig: 345 90 10
#description: The Oracle Database is an Object-Relational Database ManagementSystem.
#
./etc/rc.d/init.d/functions
LOCKFILE=/var/lock/subsys/oracle
ORACLE_HOME=/data/oracle/product/11.2.0/db_1
ORACLE_USER=oracle
case"$1" in
'start')
if [ -f $LOCKFILE ];then
echo $0 already running.
else
echo -n $"StartingOracle Database:"
su - $ORACLE_USER -c"$ORACLE_HOME/bin/lsnrctl start"
su - $ORACLE_USER -c"$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
su - $ORACLE_USER -c"$ORACLE_HOME/bin/emctl start dbconsole"
touch $LOCKFILE
fi
;;
'stop')
if [ ! -f $LOCKFILE ]; then
echo $0 already stopping.
else
echo -n $"StoppingOracle Database:"
su - $ORACLE_USER -c"$ORACLE_HOME/bin/lsnrctl stop"
su - $ORACLE_USER -c"$ORACLE_HOME/bin/dbshut"
su - $ORACLE_USER -c"$ORACLE_HOME/bin/emctl stop dbconsole"
rm -f $LOCKFILE
fi
;;
'restart')
$0 stop
sleep 5
$0 start
;;
'status')
if [ -f $LOCKFILE ]; then
echo $0 started.
else
echo $0 stopped.
fi
;;
*)
echo "Usage: $0[start|stop|status]"
exit 1
esac
exit 0
修改/etc/init.d/oracle服務文件權限
[root@CentOSinit.d]# chmod 755 /etc/init.d/oracle
設置為開機啟動
[root@CentOS~]# chkconfig oracle on
進行service oracle start/stop/restart測試
Reboot重啟查看Oracle監聽和實例進程均能自動啟動。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。