①系統要求和安裝準備
1.下載Oracle安裝包(官網下載)
https://www.oracle.com/technetwork/cn/database/enterprise-edition/downloads/index.html
2.物理內存不小於1G
grep MemTotal /proc/meminfo
3.可用硬盤不小於8G
df
4.Swap分區空間不小於2G
grep SwapTotal /proc/meminfo
5.關閉firewalld防火牆
systemctl status firewalld.service #查看firewalld防火牆狀態
systemctl stop firewalld.service #關閉firewalld防火牆
systemctl disable firewalld.service #禁止開機使用firewalld防火牆
6.修改CentOS系統標識(由於Oracle默認不支持Centos)
修改文件:vi /etc/redhat-release
將文件內容替換爲:redhat-7
7.修改內核參數
修改文件:vi /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
8.安裝必須的軟件包
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
9.創建用戶以及組
groupadd oinstall #創建安裝oracle程序用戶組
groupadd dba #創建DBA用戶組
useradd -g dba -m oracle #創建用戶oracle並加入dba組
usermod -a -G oinstall oracle #將用戶oracle加入到oinstall組
passwd oracle #修改用戶oracle的密碼
10.創建安裝目錄
mkdir -p /data/oracle #創建oracle主目錄
mkdir -p /data/inventory #創建oracle配置目錄
mkdir -p /data/src #創建oracle壓縮包解壓目錄
chown -R oracle:oinstall /data/oracle #修改目錄權限
chown -R oracle:oinstall /data/inventory
chown -R oracle:oinstall /data/src
11.修改oracle用戶的安全性能設置
修改文件: vi /etc/security/limits.conf
在文件最後一行前追加以下內容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
12.修改用戶環境變量
修改文件:vim /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
13.解壓縮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/
14.關閉selinux
修改文件:vi /etc/selinux/config
保存後重啓機器
SELINUX=disabled # ********修改此行(如果是這樣就不用修改了)******
重啓:reboot
②安裝Oracle
進入Oracle用戶
su oracle
1.安裝Oracle主程序
編輯數據庫安裝文件:vi /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
如果出現了Checking swap space: 0 MB available, 150 MB required. Failed <<<<的錯誤就執行下面的操作
1、檢查 Swap 空間在設置 Swap 文件之前,有必要先檢查一下系統裏有沒有既存的 Swap 文件。運行以下命令:
swapon -s
如果返回的信息概要是空的,則表示 Swap 文件不存在。
2、檢查文件系統在設置 Swap 文件之前,同樣有必要檢查一下文件系統,看看是否有足夠的硬盤空間來設置 Swap 。運行以下命令:
df -hal
3、創建並允許 Swap 文件下面使用 dd 命令來創建 Swap 文件。檢查返回的信息,還剩餘足夠的硬盤空間即可。
dd if=/dev/zero of=/swapfile bs=1024 count=512k
參數解讀:if=文件名:輸入文件名,缺省爲標準輸入。即指定源文件。< if=input file >of=文件名:輸出文件名,缺省爲標準輸出。即指定目的文件。< of=output file >bs=bytes:同時設置讀入/輸出的塊大小爲bytes個字節count=blocks:僅拷貝blocks個塊,塊大小等於bs指定的字節數。
4、格式化並激活 Swap 文件上面已經創建好 Swap 文件,還需要格式化後才能使用。運行命令:
mkswap /swapfile
激活 Swap ,運行命令:
swapon /swapfile
以上步驟做完,再次運行命令:
swapon -s
然後再執行安裝命令 /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監聽程序
編輯監聽配置文件:vi /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.添加數據庫實例
編輯數據庫實例文件:vi /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"