系統要求以及準備
- 實體記憶體不小于1G: 檢視方式:
- 可用硬碟不小于8G: 檢視方式:
- Swap分區空間不小于2G: 檢視方式:
- 關閉firewalld防火牆
# systemctl status` firewalld.service #檢視firewalld防火牆狀态
# systemctl stop firewalld.service #關閉firewalld防火牆
# systemctl disable firewalld.service #禁止開機使用firewalld防火牆
- 修改CentOS系統辨別 (由于Oracle預設不支援CentOS)
修改檔案: /etc/redhat-release
将檔案内容替換為:
redhat-7
-
.修改核心參數
修改檔案: /etc/sysctl.conf
添加以下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 2147483648
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
net.core.rmem_default = 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
- 修改完後,啟用新的配置:
- 安裝必須的軟體包
- 建立使用者以及組
# groupadd oinstall #建立安裝oracle程式使用者組
# groupadd dba #建立DBA使用者組
# useradd -g dba -m oracle #建立使用者oracle 并加入到dba組
# usermod -a -G oinstall oracle #将使用者oracle加入到oinstall組
# passwd oracle #修改使用者oracle的密碼
# id oracle #檢視使用者oracle的資訊
- 建立安裝目錄
# mkdir -p /data/oracle #建立oracle主目錄
# mkdir -p /data/inventory #建立oralce配置目錄
# mkdir -p /data/src #建立oracle壓縮包解壓目錄
# chown -R oracle:oinstall /data/oracle #修改目錄權限
# chown -R oracle:oinstall /data/inventory
# chown -R oracle:oinstall /data/src# ll /data #檢視目錄權限
-
修改oracle使用者的安全性能設定
修改檔案: /etc/security/limits.conf
在檔案最後一行前,追加以下内容
#@student - maxlogins 4
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
# End of file
-
修改使用者環境變量
修改檔案: /home/oracle/.bashrc
追加以下内容
export PATH
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_UNQNAME=orcl
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_token punctuation">.AL32UTF8
- 修改完後立即啟用:
- 解壓縮zip包到/data/src
# unzip linux.x64_11gR2_database_1of2.zip -d /data/src/
# unzip linux.x64_11gR2_database_2of2.zip -d /data/src/# chown -R oracle:oinstall /data/src/# ll /data/src/
-
關閉selinux
修改檔案: /etc/selinux/config
儲存後需要重新開機機器
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=disabled # ********修改此行******
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
安裝Oracle
進入Oracle使用者
-
安裝Oracle主程式
編輯資料庫安裝檔案 /data/src/database/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY # 安裝類型
ORACLE_HOSTNAME=oracle.server # 主機名稱
UNIX_GROUP_NAME=oinstall # 安裝組
INVENTORY_LOCATION=/data/inventory # INVENTORY目錄
SELECTED_LANGUAGES=en,zh_CN # 選擇語言
ORACLE_HOME=/data/oracle/product/11.2.0/db_1 # oracle_home
ORACLE_BASE=/data/oracle # oracle_base
oracle.install.db.InstallEdition=EE # oracle版本
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=orcl # globalDBName
oracle.install.db.config.starterdb.SID=orcl # SIDoracle.install.db.config.starterdb.characterSet=AL32UTF8 # 預設資料庫編碼
oracle.install.db.config.starterdb.memoryLimit=800 # 自動管理記憶體的最小記憶體(M)
oracle.install.db.config.starterdb.password.ALL=oracle # 設定所有資料庫使用者使用同一個密碼
DECLINE_SECURITY_UPDATES=true # 設定安全更新
安裝oracle
$ /data/src/database/runInstaller -silent -responseFile /data/src/database/response/db_install.rsp -ignorePrereq
漫長的等待…(時間的話看機器性能咯)
當出現如下畫面時候,請照做
要執行配置腳本,請執行以下操作:
1.打開一個終端視窗
2.以"root"身份登陸
3.運作腳本 /data/inventory/orainstRoot.sh /data/oracle/product/11.2.0/db_1/root.sh 4.傳回此視窗并按"Enter"鍵繼續
Oracle主程式就安裝完啦.
- 配置Oracle監聽程式
編輯監聽配置檔案 /data/src/database/response/netca.rsp
修改以下參數
INSTALL_TYPE=""custom"" # 安裝的類型
LISTENER_NUMBER=1 # 監聽器數量
LISTENER_NAMES={"LISTENER"} # 監聽器的名稱清單
LISTENER_PROTOCOLS={"TCP;1521"} # 監聽器使用的通訊協定清單
LISTENER_START=""LISTENER"" # 監聽器啟動的名稱
執行指令:
$ /data/oracle/product/11.2.0/db_1/bin/netca /silent /responseFile /data/src/database/response/netca.rsp
檢視監聽程式是否運作
$ netstat -tnulp | grep 1521
關于監聽的開機和關閉
開啟監聽:
/data/oracle/product/11.2.0/db_1/bin/lsnrctl start
關閉監聽:
/data/oracle/product/11.2.0/db_1/bin/lsnrctl stop
-
添加資料庫執行個體
編輯資料庫執行個體檔案 /data/src/database/response/dbca.rsp
修改以下參數
RESPONSEFILE_VERSION ="11.2.0" // 不要變哦
OPERATION_TYPE ="createDatabase" // 操作為建立執行個體
GDBNAME ="orcl" // 資料庫執行個體名
SID ="orcl" // 執行個體名字
TEMPLATENAME = "General_Purpose.dbc" // 建庫用的模闆檔案
SYSPASSWORD = "oracle" // SYS管理者密碼
SYSTEMPASSWORD = "oracle" // SYSTEM管理者密碼
SYSMANPASSWORD= "oracle"
DBSNMPPASSWORD= "oracle"
DATAFILEDESTINATION =/data/oracle/oradata // 資料檔案存放目錄
RECOVERYAREADESTINATION=/data/oracle/flash_recovery_area // 恢複資料存放目錄
CHARACTERSET ="AL32UTF8" // 字元集NATIONALCHARACTERSET= "AL16UTF16" // 字元集TOTALMEMORY ="1638" // 1638MB,實體記憶體2G*80%。
執行指令:
$ /data/oracle/product/11.2.0/db_1/bin/dbca -silent -responseFile /data/src/database/response/dbca.rsp
檢視執行個體是否運作
$ ps -ef | grep ora_ | grep -v grep
修改啟動和關閉執行個體的程式
修改檔案: /data/oracle/product/11.2.0/db_1/bin/dbstart
/data/oracle/product/11.2.0/db_1/bin/dbshut
将
ORACLE_HOME_LISTNER=$1
修改為
ORACLE_HOME_LISTNER=/data/oracle/product/11.2.0/db_1
修改檔案: /etc/oratab
将
orcl:/data/oracle/product/11.2.0:N
修改為
orcl:/data/oracle/product/11.2.0:Y
啟動或者關閉執行個體
啟動執行個體:
/data/oracle/product/11.2.0/db_1/bin/dbstart
關閉執行個體:
/data/oracle/product/11.2.0/db_1/bin/dbshut
收尾工作
-
開機啟動Oracle
Root使用者模式下:
# chmod +x /etc/rc.d/rc.local
修改檔案 /etc/rc.d/rc.local
在檔案最後追加以下内容:
su oracle -lc "/data/oracle/product/11.2.0/db_1/bin/lsnrctl start"
su oracle -lc "/data/oracle/product/11.2.0/db_1/bin/dbstart"