安裝前須知:
- 記憶體(RAM)的最小要求是 1GB,建議 2GB 及以上。
- 虛擬記憶體 swap 建議:記憶體為 1GB~2GB 時建議swap大小為記憶體大小的 1.5 倍;記憶體為 2GB~16GB 時建議swap大小為記憶體的大小;記憶體超過 16GB 時swap保持16GB。
- 要求臨時檔案目錄,如 /tmp 的磁碟空間至少 1GB。
- 磁碟空間要求:企業版為4.35GB的安裝空間和1.7GB以上的資料檔案空間;標準版為4.22GB的安裝空間和1.5GB以上的資料檔案空間。
- 需要 X window 圖形介面。
- 需要 root 使用者權限
本文安裝環境:
- 作業系統 CentOS 6.4 2.6.32-358.el6.x86_64(desktop),2GB RAM,80GB 硬碟空間(4GB swap、100MB /boot、40GB /)
- 主機名稱 mophee, IP 192.168.80.19(靜態)
- 環境:VMware Workstation 9.0
安裝所需程式包(在root帳號下操作):
binutils-2.17.50.0.6compat-libstdc++-33-3.2.3compat-libstdc++-33-3.2.3 (32 bit)elfutils-libelf-0.125elfutils-libelf-devel-0.125gcc-4.1.2gcc-c++-4.1.2glibc-2.5-24glibc-2.5-24 (32 bit)glibc-common-2.5glibc-devel-2.5glibc-devel-2.5 (32 bit)glibc-headers-2.5ksh-20060214libaio-0.3.106libaio-0.3.106 (32 bit)libaio-devel-0.3.106libaio-devel-0.3.106 (32 bit)libgcc-4.1.2libgcc-4.1.2 (32 bit)libstdc++-4.1.2libstdc++-4.1.2 (32 bit)libstdc++-devel 4.1.2make-3.81sysstat-7.0.2unixODBC-2.2.14-11.el6 (x86_64) or laterunixODBC-2.2.14-11.el6.i686 or laterunixODBC-devel-2.2.14-11.el6 (x86_64) or laterunixODBC-devel-2.2.14-11.el6.i686 or laterlibXp
使用命令 yum list | grep 'package name' 或者 rpm -q 'package name' 或者 rpm -qa | grep 'package name' 查看程式包是否已經安裝。
使用命令 yum install -y 'package name' 安裝所缺的程式包,pdksh包除外。注意:要用yum安裝32 bit的程式包,可先修改 vi /etc/yum.conf,添加一行:multilib_policy=all。oracle在檢查環境的時候會要求安裝i386,但CentOS 6.4光碟片中32 bit的程式包都是i686,其實都一樣,忽略這個差異問題應該不大(見下邊的安裝部分)。
yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl sysstat libXp unixODBC unixODBC-devel
安裝pdksh包(該程式包未被納入CentOS的安裝盤中):
使用命令:wget ftp://rpmfind.net/linux/centos/5.9/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm 將pdksh程式包下載到本地
使用命令 rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm 進行安裝(注意:該程式包與ksh衝突,如果已經安裝ksh,建議使用命令 rpm -e ksh-* 卸載)
建立所需的使用者組(在root帳號下操作):
groupadd oinstall;groupadd dba;groupadd oper;
建立所需的帳號(在root帳號下操作):
使用命令 id oracle; 查看 oracle 帳號是否已存在,若未存在則使用如下命令進行建立
useradd -g oinstall -G dba,oper oracle; #初始群組為 oinstall,有效群組為 dba、operpasswd oracle; #為oracle帳號設定密碼(安裝的時候需要登入)
若oracle帳號已存在,則使用命令 usermod -a -G dba,oper oracle 將其加入群組 dba 和 oper中
修改核心參數(在root帳號下操作):
編輯核心參數設定檔 vi /etc/sysctl.conf,在該檔案下修改或添加如下行:
fs.file-max = 6815744fs.aio_max_nr=1048576kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576
再執行以下命令使以上配置立即生效:
sysctl -p;
修改系統資源限制(在root帳號下操作):
編輯系統資源限制設定檔 vi /etc/security/limits.conf,在該檔案下添加如下行:
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536oracle soft stack 10240
編輯檔案 vi /etc/pam.d/login,添加如下行(11gR1有要求,R2沒有要求):
session required pam_limits.so
編輯 vi /etc/profile 檔案,添加如下行(11gR1有要求,R2沒有要求):
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fifi
該配置在使用者oracle登入時會立即生效,如果當前 oracle 使用者已經登入可退出後重新登入使之生效。
關閉SELinux(在root帳號下操作):
編輯SELinux設定檔 vi /etc/selinux/config,將SELINUX的值設為 disabled,如下:
SELINUX=disabled;
修改該檔案可使重啟系統後不啟動SELinux。關閉當前已開啟的SELinux使用如下命令:
setenforce 0
修改/etc/hosts檔案(在root帳號下操作):
編輯檔案 vi /etc/hosts,添加一行:
192.168.80.19 mophee
若不進行此操作會在安裝時彈出警告,並且可能影響監聽程式的正常運行,所以建議做這個修改。
建立所需的目錄(在root帳號下操作):
把oracle安裝在 /opt/oracle 目錄下,所以需建立該目錄:
mkdir /opt/oracle;chown oracle:oinstall /opt/oracle;chmod 755 /opt/oracle;
安裝時還需要設定 Inventory 目錄,所以需建立該目錄:
mkdir /opt/oraInventory;chown oracle:oinstall /opt/oraInventory;chmod 755 /opt/oraInventory;
安裝包相關:
Oracle 11g R2的安裝包被壓縮成兩個檔案:linux.x64_11gR2_database_1of2.zip、linux.x64_11gR2_database_2of2.zip,將它們上傳到安裝機器上,並使用 unzip linux.x64_11gR2_database_1of2.zip; unzip linux.x64_11gR2_database_2of2.zip; 進行解壓縮,將得到一個名稱為 database 的目錄。我把它放在 /home/oracle/database 中。
由於安裝過程是以 oracle 身份進行的,所以需確保oracle帳號對 /home/oracle/database 有執行許可權,可使用如下命令將該目錄賦予oracle帳號所有,並擁有執行許可權:
chmod -R 700 /home/oracle/database;chown -R oracle:oinstall /home/oracle/database;
------------------------退出 root,以 oracle 身份登入----------------------------------
設定oracle帳號登入時環境(以oracle身份登入):
編輯檔案 vi /home/oracle/.bash_profile,添加如下行:
ORACLE_BASE=/opt/oracle; #安裝目錄ORACLE_HOME=$ORACLE_BASE/11g; #oracle家目錄ORACLE_SID=orcl; #執行個體名LD_LIBRARY_PATH=$ORACLE_HOME/lib;PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin;export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH;
儲存退出後執行如下命令使以上設定立即生效:
source /home/oracle/.bash_profile
開始安裝(以oracle身份登入):
/home/oracle/database/runInstaller; ##執行該程式開始安裝
以下將進入圖形安裝介面
圖-1 輸入email,點擊next
圖-2 由於我的安裝機沒連通外網,所以提示我設定代理。選中複選框,點擊Continue
圖-3 選中第一項,在安裝完成時建立並簡單設定資料庫,點擊next
圖-4 選中Server Class,點擊next
圖-5 以單例模式安裝(若安裝RAC,選擇下一項),點擊next
圖-6 選中Advanced install,點擊next
圖-7 安裝程式介面上的語言,只能English啦,點擊next
圖-8 選擇安裝企業版,點擊next
圖-9 安裝基目錄和Home目錄,由於我們已設定好環境變數ORACLE_BASE和ORACLE_HOME,此處無需再選擇,點擊next
圖-10 以oinstall群組身份進行安裝,點擊next
圖-11 安裝用於交易處理的資料庫(資料倉儲選中下一項),點擊next
圖-12 由於我們已設定好環境變數ORACLE_SID,所以此步無需修改,點擊next
圖-13.1 可使用的最大記憶體,Oracle建議使用自動記憶體管理,點擊選項卡Character sets選擇字元集
圖-13.2 選擇UTF-8作為資料庫字元集,點擊Sample Schemas順便建立Oracle提供的案例
圖-13.3 選中複選框,點擊next
圖-14 沒什麼好設定的(根據自己需求),點擊next
圖-15 此步可選擇資料檔案的儲存方式,我選了簡單的檔案系統,點擊next
圖-16 是否啟用自動備份,在生產環境還是啟用的好,點擊next
圖-17 為系統管理帳號設定密碼,輸入完後點擊next
圖-18 選擇DBA帳號所屬群組(可使用conn / as sysdba登入資料庫)和oper帳號所屬群組,點擊next
圖-19 安裝程式對環境進行檢查,由於CentOS的32bit程式包都是i686的,而oracle要求i386,所以此處會失敗,忽略即可。點擊next
圖-20 點擊Finish,開始安裝
圖-21 安裝ing。。。
圖-22 安裝ing。。。
圖-23 點擊Password Management可設定相關管理帳號的密碼,由於在圖-17已設過所以無需再設,點擊OK
圖-24 保留,先執行下一步:以root身份登入執行那兩個sh檔案
圖-25 以root身份登入執行那兩個sh檔案,如左下角。執行完成後,點擊OK,就大功告成了。
開啟瀏覽器,輸入https://localhost:1158/em,可開啟Database Control管理介面,則Oracle已經開始運行了。
本文參考Oracle官方文檔:Oracle Database Quick Installation Guide 11g Release 2 (11.2) for Linux x86-64
聲明:本文在博主特定的環境中進行原創,為避免造成誤導和方面讀者與博主溝通,請在轉載時註明出處。