編者按:Oracle 10g 可以安裝在RHEL 3 Update 4 以后以及對(duì)應(yīng)CentOS的各版本。筆者成功把Oracle 10g 安裝在2020年6月15日發(fā)布的CentOS 8.2 Minimal 系統(tǒng)上,本文將總結(jié)安裝Oracle 10g的通用方法。
硬件環(huán)境:
LENOVO Thin kpad E470c 筆記本X86 結(jié) 構(gòu),64位;內(nèi) 存:4 GB;8 GB U 盤:制作CentOS 8.2系統(tǒng)安裝啟動(dòng)盤;
軟件環(huán)境:
操作系統(tǒng):CentOS 8.2 Minimal;Swap space:16 GB。
1.從清華大學(xué)開源軟件鏡像站https://mirrors.tun a.tsinghua.edu.cn/centos/8.2.2004/isos/x86_64/下載CentOS-8.2.200 4-x86_64-dvd1.iso。
2.從軟碟通UltraISO官 網(wǎng)https://cn.ultraiso.net/,下載UltraISO 9.7.43.3 618 試用版安裝。
3.用Ultra ISO 制作CentOS 8.2 安裝盤,并把筆記本電腦安 裝CentOS 8.2 Minimal系統(tǒng)。
4.配置本地yum 源,CentOS 8 以上版本需要配置2 個(gè)存儲(chǔ)庫(kù),BaseOS 和AppStream。
5.用root 登 錄,安 裝以下軟件包后,符合Oracle 10g 安裝要求 。
yumgroupinstall-y"base-x"".NETCore Devel opment"“Server""Server product core""Standard""System Tools"
"Workstation""Workst ation product core"
yum install-y lib
Xau.i686 libXtst.i686 libXp.i686 libX11.i686 libICE.i686 glibc.i686 libgcc.i686 glibcdevel.i686 libxcb.i686 libSM.i686 libXt.i686 libXext.i686 libXi.i686 libuuid.i686 glibc-devel.i686 libXpm.i686 nsssoftokn-freebl.i686 nsssoftokn-freebl-devel.i686 libnsl.i686 libnsl tcsh xterm xorg-x11-fonts-ISO8859-1-100dpi make gcc automake
CentOS 8.2 Minimal安裝了400 個(gè)rpm 包(rpm-qa |wc-l),安裝完以上組件后rpm 包個(gè)數(shù)是1 455個(gè)。為確保Oracle 10g的順利安裝,選擇的安裝包個(gè)數(shù)多于實(shí)際需要。安裝完成后設(shè)置下次啟動(dòng)自動(dòng)進(jìn)入圖形界面(命令:systemctl set-default graphical.target)。
1.用root 登 錄,設(shè) 置主 機(jī)名(hostnamectl sethostname myhosts)、hosts表。為了系統(tǒng)穩(wěn)定運(yùn)行,建議選定主機(jī)的其中一塊網(wǎng)卡,設(shè)置靜態(tài)IP 地址,并在hosts 表里綁定主機(jī)名,以后應(yīng)用中盡量不要更改主機(jī)名,重啟網(wǎng)卡(命令:nmcli c reload)生效。
2.關(guān) 閉selinux 服 務(wù)(set enforce 0 并改配置文件/etc/selinux/config),關(guān)閉防火墻(systemctl stop firewalld.service)或配置防火墻,允許1521 端口開放。因?yàn)镺racle 10g不支持selinux 所以要關(guān)閉selinux,Oracle 11g 開始支持selinux。
3.在Centos 8.2 下安裝Oracle 10g 不檢測(cè)CentOS版本號(hào),這與Centos 8.1 及以前版本下安裝Oracle 10g不同。因?yàn)镺racle 10g 是為Redhat-3、Redhat-4 開發(fā)的,Redhat-5(Centos-5)及以后版本的操作系統(tǒng)需要修改版本信息(/etc/redhatrelease 或/etc/centosrelease)。
4.創(chuàng)建用戶組dba 和用戶Oracle(以csh 為例),創(chuàng)建安裝目錄/soft/oracle,并賦予oracle:dba 權(quán) 限。安裝目錄最好單獨(dú)放在一個(gè)200 GB 左右的分區(qū)上,以免剩余空間為0 會(huì)影響Oracle運(yùn)行,Oracle 10g 分區(qū)最大不超過2 TB。
5.配置Linux 內(nèi)核參數(shù)。內(nèi)核參數(shù)根據(jù)Oracle 和應(yīng)用軟件需要設(shè)置,以下是一個(gè)樣例。
6.配 置Oracle 用 戶的資源限制樣例
說明:
kernel.shmmax 這個(gè)值可以設(shè)置為實(shí)際內(nèi)存的90%;
kernel_shmall的值為kernel.shmmax/4096;
kernel.sem 該文件用于控制內(nèi)核信號(hào)量,信號(hào)量是System VIPC 用于進(jìn)程間通訊的方法,第一列,表示每個(gè)信號(hào)集中的最大信號(hào)量數(shù)目,第二列,表示系統(tǒng)范圍內(nèi)的最大信號(hào)量總數(shù)目,第三列,表示每個(gè)信號(hào)發(fā)生時(shí)的最大系統(tǒng)操作數(shù)目,第四列,表示系統(tǒng)范圍內(nèi)的最大信號(hào)集總數(shù)目; net.ipv4.ip_local_port_range 是ip通訊允許使用的端口范圍;net.core.rmem_default 默認(rèn)接收窗口大?。?/p>
net.core.rmem_max 接收窗口最大值;
net.core.wmem_default默認(rèn)發(fā)送窗口大??;
net.core.wmem_max 發(fā)送窗口最大值;
fs.file-max 是系統(tǒng)能打開的最大文件數(shù);
vm.hugetlb_shm_group 該參數(shù)表示允許使用hugetlb 頁(yè)創(chuàng)建System VIPC 共享內(nèi)存段的系統(tǒng)組ID,要把Oracle 用戶所屬組dba的ID 號(hào)賦予此值;
/etc/security/limits.conf 配置文件可限制文件打開數(shù),系統(tǒng)進(jìn)程等資源,在該文件配置中寫的最大用戶進(jìn)程數(shù)是受/etc/security/limits.d/90-nproc.conf 配置上限影響。
1.重啟系統(tǒng)后,用Orac le 用戶登錄。
2.配 置Oracle 用 戶環(huán)境變量.cshrc,復(fù)制到家目錄下后執(zhí)行source~/.cshrc。以下是樣例,根據(jù)實(shí)際情況進(jìn)行更改。
3.解 壓Oralce 安裝包到oracle 安裝目錄,進(jìn)入的runInstaller 文件所在目錄,運(yùn)行./runInstaller 開始進(jìn)入安裝向?qū)А?/p>
4.到如圖1 所示界面時(shí)需要”0 requiements to be verified”。
5.”Summary” Install進(jìn)度條到約83% 時(shí)時(shí)間會(huì)比較長(zhǎng),彈出一個(gè)報(bào)錯(cuò)窗口(正常),”Error in invoking target ‘collector ‘ of makefile “單擊Continue 按鈕2 次即可。
6.創(chuàng)建Oracle 實(shí)例。Oracle 實(shí)例是Oracle 在內(nèi)存中的結(jié)構(gòu),存在硬盤上就是文件。如果有實(shí)例模板復(fù)制到$ORACLE_HOME/assistants/dbca/templates 目 錄,source~/.cshrc 后運(yùn)行dbca 啟 動(dòng)實(shí)例安裝向?qū)В纠贪匆延心0灏惭b。
7.step4 時(shí)不選擇“Conf igure the Database with Enterprise Manager”;step5選“Use the Same Password for All Accounts” password為“system”;step10 選 擇Typical,如果安裝主機(jī)內(nèi)存較小,可以選擇100%,其他步驟選擇下一步即可。
圖1 安裝界面
8.安裝完成,啟動(dòng)監(jiān)聽,lsnrctl start。
9.檢查數(shù)據(jù)庫(kù)是否啟動(dòng)。
ps–ef |grep ora_,有ora_pmon_ 實(shí)例名等14 個(gè)進(jìn)程,說明數(shù)據(jù)庫(kù)實(shí)例已經(jīng)在內(nèi)存正常運(yùn)行;sqlplus/as sysdba 運(yùn) 行sql 查詢數(shù)據(jù)庫(kù)狀態(tài):select status from v$instance,顯示open在數(shù)據(jù)庫(kù)運(yùn)行正常;關(guān)庫(kù)shutdown immediate,顯示“ORACLE instance starte d“正常;關(guān)庫(kù)后內(nèi)存14 個(gè)進(jìn)程消失;開庫(kù)startup,顯示”Database opened”正常,內(nèi)存14 個(gè)進(jìn)程出現(xiàn)。