前言:
oracle的安裝還是比較繁瑣與容易出現問題的,在網上找了很多資料,一步步的解決問題,最后形成了本篇文章,在測試環境下復制粘貼加回車就完成了數據庫的安裝,如果有需要,還可以將它寫成腳本,更方便的來進行操作:
一、准備工作:
- 在/etc/hosts下添加主機名和IP的映射(修改默認的localhost主機名)
- 關閉selinux 與防火牆,編輯 /etc/selinux/config文件,設置SELINUX= enforcing 為SELINUX=disabled
二、開始安裝:
1.安裝相關環境軟件包
yum install -y binutils* compat-libcap1* compat-libstdc++* gcc* glibc* ksh* libgcc* libstdc++* libaio* make* sysstat* elfutils-libelf-devel* unixODBC*
2.修改內核參數:
編輯vim /etc/sysctl.conf
添加以下設置:
io-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
修改后運行/sbin/sysctl -p命令使得內核改變立即生效;
3.修改用戶的限制文件:
編輯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
4.修改vim /etc/pam.d/login文件:
添加:
session required /lib64/security/pam_limits.so
session required pam_limits.so
5.修改/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
6.創建安裝目錄、修改文件權限,創建oracle用戶與相關組:
groupadd dba
groupadd oinstall
useradd -d /home/oracle -m -g oinstall -G dba -p 123 oracle
[root@woitumi-197 ~]# mkdir -p /u01/app/oracle/product/11.2.0
[root@woitumi-197 ~]# mkdir /u01/app/oracle/oradata
[root@woitumi-197 ~]# mkdir /u01/app/oracle/inventory
[root@woitumi-197 ~]# mkdir /u01/app/oracle/fast_recovery_area
[root@woitumi-197 ~]# chown -R oracle:oinstall /u01/app/oracle
[root@woitumi-197 ~]# chmod -R 775 /u01/app/oracle
7.上傳oracle軟件包到 /tmp目錄下
8.解壓軟件包:
[root@woitumi-197 tmp]# unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip
9.切換用戶為oracle,設置oracle用戶環境變量——vim .bash_profile
添加:
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
重新加載環境變量:
source .bash_profile
11.切換到root 用戶進入oracle安裝包解壓后的目錄cd /tmp/database/response/下備份db_install.rsp文件。
cp db_install.rsp db_install.rsp.bak
12.編輯靜默安裝響應文件:
編輯vim /tmp/database/response/db_install.rsp文件
修改以下參數:
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=woitumi-197
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true //385
13.切換到oracle用戶下並進入/tmp/database目錄下,執行腳本來進行安裝:
[oracle@woitumi-197 database]$ ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /tmp/database/response/db_install.rsp
此處需要等3分鍾或者更長時間。
14.切換root用戶運行腳本:
[root@woitumi-197 database]# sh /u01/app/oracle/inventory/orainstRoot.sh
[root@woitumi-197 database]# sh /u01/app/oracle/product/11.2.0/root.sh
15.切換到oracle用戶下,為數據庫配置監聽:
[oracle@woitumi-197 ~]$ netca -silent -responseFile /tmp/database/response/netca.rsp
這一步可能會報錯,是個偶現的問題,配置下DISPLAY變量,然后再執行配置監聽的命令就ok:
[oracle@woitumi-197 ~]$ export DISPLAY=localhost:0.0
16.查看1521端口是否已經啟動oracle應用:
[root@woitumi-197 admin]# netstat -tnulp | grep 1521
17.切換到root用戶下,修改實例名的配置文件:
編輯vim /tmp/database/response/dbca.rsp
修改以下參數:
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/u01/app/oracle/oradata /357
RECOVERYAREADESTINATION=/u01/app/oracle/fast_recovery_area /367
CHARACTERSET = "ZHS16GBK" /415
TOTALMEMORY = "1638" /540
18.切換到oracle用戶下,重載配置文件:
[oracle@woitumi-197 ~]$ dbca -silent -responseFile /tmp/database/response/dbca.rsp
三、檢驗安裝結果:
1.建庫后的實例檢查:
[oracle@woitumi-197 ~]$ ps -ef | grep ora_ | grep -v grep
2.查看監聽狀態:
[oracle@woitumi-197 ~]$ lsnrctl status
3.嘗試命令行操作:
[oracle@woitumi-197 dbs]$ sqlplus / as sysdba
在三大常用數據庫中,oracle的安裝是屬於比較復雜的,其中安裝步驟也可能出現不同的問題,筆者在安裝的時候也只是遇到了幾個,日后遇到的問題也會在博客中一一補充的。
