1. 程式人生 > 資料庫 >在虛擬機器CentOS7中無圖形介面安裝Oracle11G R2版本

在虛擬機器CentOS7中無圖形介面安裝Oracle11G R2版本

Oracle11G R2下載連結

 ① 系統要求以及準備

1. 實體記憶體不小於1G: 檢視方式:

# grep MemTotal /proc/meminfo

2. 可用硬碟不小於8G: 檢視方式:

# df

3.Swap分割槽空間不小於2G: 檢視方式:

# grep SwapTotal /proc/meminfo

4. 關閉firewalld防火牆

# systemctl status firewalld.service    #檢視firewalld防火牆狀態
# systemctl stop firewalld.service      #關閉firewalld防火牆
# systemctl disable firewalld.service   #禁止開機使用firewalld防火牆

5. 修改CentOS系統標識 (由於Oracle預設不支援CentOS)
    修改檔案:  /etc/redhat-release
    將檔案內容替換為:

redhat-7

6.修改核心引數
   修改檔案:  /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

修改完後,啟用新的配置:

# sysctl -p

7. 安裝必須的軟體包

# yum -y install binutils* compat-libcap1* compat-libstdc++* gcc* gcc-c++* glibc* glibc-devel* ksh* libaio* libaio-devel* libgcc* libstdc++* libstdc++-devel* libXi* libXtst* make* sysstat* elfutils* unixODBC* unzip lrzsz

8. 建立使用者以及組

# 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的資訊

9. 建立安裝目錄

# 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 #檢視目錄許可權

10. 修改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

11. 修改使用者環境變數
      修改檔案:   /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_LANG=AMERICAN_AMERICA.AL32UTF8

      修改完後立即啟用:

# source /home/oracle/.bashrc

12. 解壓縮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/

13. 關閉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 
# reboot

 

② 安裝Oracle

進入Oracle使用者

# su oracle

1.安裝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                # SID
oracle.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主程式就安裝完啦.

2.配置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

 

3.新增資料庫例項

編輯資料庫例項檔案  /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

 

③ 收尾工作

1.開機啟動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"