centos6.8 靜默安裝 oracle 11.2.0.4

張衝andy發表於2017-07-30

安裝環境及系統要求    (下文具體引數值與路徑根據自己的環境調整)
作業系統:Red Hat Enterprise Linux 6 (x86) 或者CentOS 6 (x64) 
資料庫:Oracle 11g r2 32-bit for Linux 或者 Oracle 11g r2 64-bit for Linux
記憶體:至少1G的實體記憶體
交換空間:1G的記憶體推薦設定swap 分割槽至少為2G
硬碟:至少5G硬碟空間
配置Linux系統引數進行Oracle的安裝

在Root使用者下執行以下步驟:
前提:
1. cat /etc/sysconfig/network (檢視主機名)
vi /etc/hosts (把Ip 與 主機名加進去) 
2. vi /etc/resolv.conf
在此檔案最後加入:nameserver 8.8.8.8

(1)修改使用者的SHELL的限制,修改/etc/security/limits.conf檔案
輸入命令:vi /etc/security/limits.conf,按i鍵進入編輯模式,將下列內容加入該檔案。
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
編輯完成後按Esc鍵,輸入“:wq”存檔退出
(2)修改/etc/pam.d/login 檔案,輸入命令:vi /etc/pam.d/login,按i鍵進入編輯模式,將下列內容加入該檔案。
session required /lib64/security/pam_limits.so (說明/lib64為x86_64位機器,如果是/lib則為32為機器,否則出現無法登陸現象)
session required pam_limits.so
編輯完成後按Esc鍵,輸入“:wq”存檔退出
(3)修改linux核心,修改/etc/sysctl.conf檔案,輸入命令: vi /etc/sysctl.conf ,按i鍵進入編輯模式,將下列內容加入該檔案
fs.file-max = 6815744 
fs.aio-max-nr = 1048576 
kernel.shmall = 2097152 
kernel.shmmax = 2147483648 
kernel.shmmni = 4096 
kernel.sem = 250 32000 100 128 
net.ipv4.ip_local_port_range = 9000 65500 
net.core.rmem_default = 4194304 
net.core.rmem_max = 4194304 
net.core.wmem_default = 262144 
net.core.wmem_max = 1048576
編輯完成後按Esc鍵,輸入“:wq”存檔退出
(4)編輯 /etc/profile ,輸入命令:vi /etc/profile,按i鍵進入編輯模式,將下列內容加入該檔案。

if [ $USER = "oracle" ]; then 
if [ $SHELL = "/bin/ksh" ]; then 
ulimit -p 16384 
ulimit -n 65536 
else 
ulimit -u 16384 -n 65536 
fi
fi
編輯完成後按Esc鍵,輸入“:wq”存檔退出
(5)建立相關使用者和組,作為軟體安裝和支援組的擁有者。
建立使用者,輸入命令:
groupadd oinstall 
groupadd dba
建立Oracle使用者和密碼,輸入命令:
useradd -g oinstall -G dba -m oracle
passwd oracle
然後會讓你輸入密碼,密碼任意輸入2次,但必須保持一致,回車確認
(6)建立資料庫軟體目錄和資料檔案存放目錄
輸入命令:
mkdir /u01/app/oracle 
(7)更改目錄屬主為Oracle使用者所有
輸入命令:
chown -R oracle:oinstall /u01/app/oracle
(8)配置好yum源,補包 
yum install binutils compat-libcap1 vsftpd compat-libstdc++-33 iptraf gcc gcc-c++
glibc-devel glibc elfutils-libelf-devel compat-libcap1 compat-libstdc++-33 libaio-devel ksh libgcc
libstdc libstdc++ libstdc++-devel libaio libaio-devel make sysstat unixODBC unixODBC-devel -y

在oracle使用者下執行以下步驟:
(1)配置oracle使用者的環境變數
輸入命令: 
vi .bash_profile 
按i進入編輯模式,增加以下內容:

PATH=$PATH:$HOME/bin
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=nifa
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
編輯完成後按Esc鍵,輸入“:wq”存檔退出。 執行命令直接生效 source .bash_profile

(2)將Oracle安裝包(以64位為例)複製到linux的home目錄下,開啟終端命令列介面,執行unzip命令解壓oracle安裝檔案。
輸入命令:
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

(3)建立oraInst.loc(命令 vim /etc/oraInst.loc 沒有這個檔案錄入以下內容儲存後會新建)

inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall

編輯完成後按Esc鍵,輸入“:wq”存檔退出

(4) 靜默安裝軟體
[oracle@orcl ~]$ vi /home/oracle/database/response/db_install.rsp 
[oracle@orcl ~]$ cat /home/oracle/database/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY        //安裝型別,只裝資料庫軟體
ORACLE_HOSTNAME=oracle                 //主機名稱(命令hostname查詢)
UNIX_GROUP_NAME=oinstall               // 安裝組
INVENTORY_LOCATION=/u01/app/oracle/oraInventory//INVENTORY目錄(**不填就是預設值,本例此 處需修改,因個人建立安裝目錄而定)
SELECTED_LANGUAGES=en,zh_CN        // 選擇語言
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 // oracle_home *路徑根據目錄情況注意修改 本例安徑/u01/app/oracle
ORACLE_BASE=/u01/app/oracle   // oracle_base *注意修改
oracle.install.db.InstallEdition=EE         // oracle版本
oracle.install.db.isCustomInstall=false         //自定義安裝,否,使用預設元件
oracle.install.db.DBA_GROUP=dba         //dba使用者組
oracle.install.db.OPER_GROUP=oinstall         //oper使用者組
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //資料庫型別
oracle.install.db.config.starterdb.globalDBName=nifa //globalDBName
oracle.install.db.config.starterdb.SID=nifa         //SID(**此處注意與環境變數內配置SID一致)
oracle.install.db.config.starterdb.memoryLimit=81920 //自動管理記憶體的記憶體(M)
oracle.install.db.config.starterdb.password.ALL=oracle //設定所有資料庫使用者使用同一個密碼
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false       //(手動寫了false)
DECLINE_SECURITY_UPDATES=true                 // **注意此引數 設定一定要為true
[oracle@orcl ~]$ cd database/
[oracle@orcl database]$ ./database/runInstaller -silent -force -noconfig -ignorePrereq -responseFile
/home/oracle/database/response/db_install.rsp
### 引數說明:
  /database是安裝包解壓後的路徑,此處根據安裝包解壓所在位置做修改,因人而異。
  runInstaller 是主要安裝指令碼
  -silent 靜默模式
  -force 強制安裝
  -ignorePrereq忽略warning直接安裝。
  -responseFile讀取安裝應答檔案。

Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB. Actual 2533 MB Passed
Checking swap space: must be greater than 150 MB. Actual 2047 MB Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2017-07-30_01-58-53PM. Please wait ...[oracle@orcl database]$ You can find the log of this install session at:
/u01/app/oracle/oraInventory/logs/installActions2017-07-30_01-58-53PM.log
The installation of Oracle Database 11g was successful.
Please check '/u01/app/oracle/oraInventory/logs/silentInstall2017-07-30_01-58-53PM.log' for more details.

As a root user, execute the following script(s):
1. /u01/app/oracle/11.2.0/product/db/root.sh


Successfully Setup Software.

(5) root執行指令碼
[root@orcl ~]# /u01/app/oracle/11.2.0/product/db/root.sh
(6) 手動配置監聽,檔案不存在就手動建立一個

[oracle@orcl response]$ cat /u01/app/oracle/11.2.0/product/db/network/admin/listerer.ora 
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.8)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
[oracle@orcl response]$ cat /u01/app/oracle/11.2.0/product/db/network/admin/tnsnames.ora 
# tnsnames.ora Network Configuration File: /u01/app/oracle/11.2.0/product/db/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

NIFA =
(DESCRIPTION =
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = nifa)
)
)

(7) DBCA靜默建庫:
[oracle@orcl bin]$ vi /home/oracle/database/response/dbca.rsp
[oracle@orcl bin]$ cat /home/oracle/database/response/dbca.rsp (有些值為#RECOVERYAREADESTINATION 可以使用預設值)
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "nifa"
SID = "nifa"
TEMPLATENAME = "General_Purpose.dbc"
STORAGETYPE=FS
DATAFILEDESTINATION =/oracle/app/oradata
RECOVERYAREADESTINATION=/oracle/app/flash_recovery_area
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "AL32UTF8"
LISTENERS=LISTENER
TOTALMEMORY = "7000"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
[oracle@orcl bin]$ $ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/database/response/dbca.rsp
Copying database files
1% complete
3% complete
11% complete
18% complete
26% complete
37% complete
Creating and starting Oracle instance
40% complete
45% complete
50% complete
55% complete
56% complete
57% complete
60% complete
62% complete
Completing Database Creation
66% complete
70% complete
73% complete
85% complete
96% complete
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/nifa/nifa.log" for further details.
說明: 

如果使用asm , 則指定為  -storageType ASM 。 (注意沒有帶+)
如果為12c資料庫,則 -createAsContainerDatabase true 指定為容器資料庫 


(8) 檢查oracle例項是否正常執行
[oracle@orcl ~]$ ps -ef|grep ora_pmon
oracle 3400 5309 0 18:01 pts/1 00:00:00 grep ora_pmon
oracle 31779 1 0 15:45 ? 00:00:01 ora_pmon_nifa
[oracle@orcl ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Sun Jul 30 18:01:53 2017

Copyright (c) 1982, 2013, Oracle. All rights reserved.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2142793/,如需轉載,請註明出處,否則將追究法律責任。

相關文章