1. 引言
1.1. 編寫目的
本文檔描述了在RedHat 7.2下如何進行oracle 11g單機版的安裝,用於指導作用。
1.2. 適用范圍
1.3. 使用人員
支持維護工程師,測試相關工程師、實施工程師等其他需要進行oracle 11g安裝的人員。
1.4. 安裝要求
1.4.1. 操作系統
目前支持如下操作系統:
RedHat:7.2
1.5. 說明
該文檔使用wps軟件進行編寫,修改文檔時若使用微軟office可能會出現部分樣式不存在,編寫人要按實際進行修改。
2. 操作系統安裝及系統配置
2.1. 操作系統
安裝RedHat時請選擇簡體中文、最小化安裝。
2.2. 系統基本配置
使用root用戶登錄,進行系統基本配置。
2.2.1. 主機名修改
系統在初始安裝完成后,默認的主機名一般為localhost.localdomain,需進行下主機名修改。主機名可自定義修改,不能帶下划線,多台機器的主機名不能相同。
[root@localhost ~]# vi /etc/hostname |
修改主機名
2.2.2. IP與主機名綁定
進入/etc/hosts,刪除::1這行,增加IP與主機名的綁定
[root@localhost ~]# vi /etc/hosts |
修改前:
修改后:
10.0.33.122 是機器的實際IP,根據實際進行修改
wgl122 是上述步驟配置的主機名
上述操作執行完成后,需要執行reboot命令重啟機器
[root@localhost ~]# reboot |
2.2.3. 防火牆關閉
[root@wgl122 ~]# systemctl stop firewalld |
上述命令只是臨時關閉了防火牆,重啟后又會啟動,故還需執行以下命令,使其服務器重啟后不自啟動防火牆。
[root@wgl122 ~]# systemctl disable firewalld |
2.2.4. 關閉selinux
[root@wgl122 ~]# setenforce 0 |
[root@wgl122 ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config |
2.2.5. 服務器時間校正
通過date命令查看當前服務器時間。
[root@localhost ~]# date |
若看到時間顯示EDT,表示美國東部夏令時間。
可通過如下命令修改成CST時區。
[root@wgl122 ~]# rm -rf /etc/localtime |
[root@wgl122 ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime |
再次通過date命令查看當前服務器時間,發現已修改成CST時區。
若時區正確后日期和時間不正確,通過date命令將服務器時間設置正確。
[root@wgl122 ~]# date -s "2019-06-18 17:06:12" |
“2018-08-09 13:24:12”:請根據實際時間輸入。
date -s 設置后,若馬上重啟會使設置失效。
在系統啟動時,Linux操作系統將時間從CMOS中讀到系統時間變量中。為了保持系統時間與CMOS時間的一致性,Linux每隔一段時間會將系統時間寫入CMOS。由於該同步是每隔一段時間(大約是11分鍾)進行的,在我們執行date -s后,如果馬上重起機器,修改時間就有可能沒有被寫入CMOS。因此使用clock把系統時間寫入CMOS。
執行如下命令,使硬件時間同步系統時間和把系統時間寫入CMOS。
[root@wgl122 ~]# hwclock --systohc |
[root@wgl122 ~]# clock -w |
若服務器是虛擬機,本身宿主機時間就設置錯誤,那上述命令執行后重啟,時間仍可能會錯誤。
3. 依賴庫安裝
依賴庫安裝有多種方案。在聯網環境下,我們可使用在線yum安裝;而在離線環境下,我們可使用上傳依賴庫對應的rpm包或直接將系統鏡像文件做成本地yum源來進行安裝。此處我們通過直接將系統鏡像文件做成本地yum源的方式來進行安裝。
獲取對應的RedHat 7.2鏡像文件,可在如下百度雲盤地址進行下載:
鏈接:https://pan.baidu.com/s/1rmalRGHTym9BQESlBN5HcA
提取碼:m11b
Linux系統上創建文件夾,用於上傳安裝所需要的所有文件。此處放置到/home/software下。
[root@wgl122 ~]# mkdir /home/software |
[root@wgl122 ~]# cd /home/software/ |
上傳系統鏡像到該目錄下
上傳完成后掛載鏡像。
[root@wgl122 software]# mkdir /media/cdrom |
[root@wgl122 software]# mount -o loop -t iso9660 /home/software/rhel-server-7.2-x86_64-dvd.iso /media/cdrom/ |
[root@wgl122 software]# vi /etc/yum.repos.d/redhat-base.repo |
編輯本地yum源配置文件redhat-base.repo,內容如下
[redhat-base] name=redhat-base baseurl=file:///media/cdrom gpgcheck=0 enable=1 |
[root@wgl122 software]# yum repolist |
至此本地yum庫配置完成,接下來就可通過yum install各種依賴庫。
[root@wgl122 software]# yum install -y compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc-devel |
[root@wgl122 software]# yum install -y ksh libaio-devel numactl-devel |
[root@wgl122 software]# yum install -y unixODBC unixODBC-devel oracleasm oracleasmlib oracleasm-support |
[root@wgl122 software]# yum install -y unzip zip |
[root@wgl122 software]# yum install -y libXp* |
4. 用戶和用戶組創建
[root@wgl122 software]# groupadd dba |
[root@wgl122 software]# groupadd oinstall |
[root@wgl122 software]# useradd -g oinstall -G dba oracle |
設置oracle用戶的密碼
[root@wgl122 software]# passwd oracle |
5. 系統參數調整
[root@wgl122 software]# vi /etc/sysctl.conf |
添加如下內容:
fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 |
[root@wgl122 software]# sysctl -p |
[root@wgl122 software]# vi /etc/security/limits.conf |
添加如下內容:
oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 oracle hard memlock 134217728 oracle soft memlock 134217728 |
6. 安裝目錄的配置
此處我們將文件都安裝到/opt/app下
[root@wgl122 software]# mkdir -p /opt/app/oracle |
[root@wgl122 software]# mkdir -p /opt/app/database |
[root@wgl122 software]# mkdir -p /opt/app/oraInventory |
[root@wgl122 software]# chown -R oracle:oinstall /opt/app |
[root@wgl122 software]# chmod 755 /opt/app |
7. 上傳oracle安裝包
oracle 11g安裝包可從官網或百度雲盤下載,百度雲盤地址:
鏈接:https://pan.baidu.com/s/1Q-T7NAo2D1VFjvIgbmy2Sw
提取碼:27vb
將oracle 11g安裝包上傳到/home/software下,進行解壓
[root@wgl122 software]# unzip linux.x64_11gR2_database_1of2.zip |
[root@wgl122 software]# unzip linux.x64_11gR2_database_2of2.zip |
解壓后的文件都在database文件夾中
8. 環境變量設置
切換到oracle用戶,編輯配置.bash_profile文件
[root@wgl122 software]# su - oracle |
[oracle@wgl122 ~]# vi .bash_profile |
在文件末尾添加如下信息:
export ORACLE_BASE=/opt/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 export ORACLE_SID=orcl export ORACLE_PID=ora11g export PATH=$PATH:$ORACLE_HOME/bin:/usr/sbin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8" |
[oracle@wgl122 ~]# source .bash_profile |
9. 編輯靜默安裝響應文件,進行安裝
9.1. 備份db_install.rsp文件
切換回root用戶,進入/home/software/database/response下備份db_install.rsp文件
[oracle@wgl122 ~]# exit |
[root@wgl122 software]# cd /home/software/database/response |
[root@wgl122 response]# cp db_install.rsp db_install.rsp.bak |
9.2. db_install.rsp配置修改
編輯db_install.rsp文件,進行現有配置修改
oracle.install.option=INSTALL_DB_SWONLY // 安裝類型 ORACLE_HOSTNAME=wgl122 // 主機名稱 UNIX_GROUP_NAME=oinstall // 安裝組 INVENTORY_LOCATION=/opt/app/oraInventory // INVENTORY目錄 SELECTED_LANGUAGES=en,zh_CN,zh_TW // 選擇語言 ORACLE_HOME=/opt/app/oracle/product/11.2.0/db_1 // oracle_home ORACLE_BASE=/opt/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=orcl // globalDBName oracle.install.db.config.starterdb.SID=orcl // SID oracle.install.db.config.starterdb.memoryLimit=81920 // 自動管理內存的內存(M) oracle.install.db.config.starterdb.password.ALL=oracle //設定所有數據庫用戶使用同一個密碼 SECURITY_UPDATES_VIA_MYORACLESUPPORT=false DECLINE_SECURITY_UPDATES=true // 設置安全更新 |
若實際安裝的目錄和上面定義的相同,可直接使用下面壓縮包中文件
https://files.cnblogs.com/files/handsume/oracle_rsp.zip
若不相同,請自行根據實際修改
9.3. 執行靜默安裝
切換到oracle用戶,進行靜默安裝
[root@wgl122 response]# su - oracle |
[oracle@wgl122 ~]$ cd /home/software/database/ |
[oracle@wgl122 database]$ ./runInstaller -silent -ignorePrereq -ignoreSysPrereqs -responseFile /home/software/database/response/db_install.rsp |
按輸出提示可在/opt/app/oraInventory/logs/installActions2019-08-05_08-43-16PM.log查看。
新打開一個shell窗口,千萬不要關閉之前的安裝窗口。
通過tail -f /opt/app/oraInventory/logs/installActions2019-08-05_08-43-16PM.log上述的日志文件查看安裝信息。
安裝完成后,會在安裝窗口提示 Successfully Setup Software
9.4. 切換root用戶運行腳本
按照提示,打開一個新的終端窗口,以root用戶執行腳本(在當前窗口按Enter后以root用戶執行腳本也可)
[root@wgl122 ~]# sh /opt/app/oraInventory/orainstRoot.sh |
[root@wgl122 ~]# sh /opt/app/oracle/product/11.2.0/db_1/root.sh |
9.5. 切換oracle用戶配置監聽
[root@wgl122 ~]# su - oracle |
[oracle@wgl122 ~]$ export DISPLAY=localhost:0.0 |
[oracle@wgl122 ~]$ netca -silent -responseFile /home/software/database/response/netca.rsp |
運行成功之后,會在/opt/app/oracle/product/11.2.0/db_1/network/admin/中生成listener.ora和sqlnet.ora兩個文件。
默認使用1521作為監聽端口。
9.6. 建立新庫,同時建立對應的實例
切換到root用戶,編輯/home/software/database/response/dbca.rsp文件
[oracle@wgl122 ~]$ exit |
[root@wgl122 ~]# vi /home/software/database/response/dbca.rsp |
修改如下參數
GDBNAME = "orcl" SID = "orcl" SYSPASSWORD = "oracle" // SYS用戶密碼 SYSTEMPASSWORD = "oracle" // SYSTEM用戶密碼 SYSMANPASSWORD = "oracle" // SYSMAN用戶密碼 DBSNMPPASSWORD = "oracle" // DBSNMP用戶密碼 CHARACTERSET = "AL32UTF8" // 如果需要使用GBK,則改成ZHS16GBK TOTALMEMORY = "1638" |
若實際參數與上述相同,
可直接使用下面壓縮包中文件
https://files.cnblogs.com/files/handsume/oracle_rsp.zip
9.7. 靜默配置orcl實例
[root@wgl122 ~]# su - oracle |
[oracle@wgl122 ~]$ dbca -silent -responseFile /home/software/database/response/dbca.rsp |
等待一段時間后,提示安裝完成。
10. 常用命令
以下命令都在oracle用戶下執行
10.1. 監聽狀態查看
[oracle@wgl122 ~]$ lsnrctl status |
10.2. 數據庫的停止與啟動
[oracle@wgl122 ~]$ sqlplus / as sysdba
SQL> shutdown immediate SQL> startup |