1. 下載相應的rpm包 我這邊使用的主要有:
-rw-r--r-- 1 root root 19112 Apr 5 15:13 compat-libcap1-1.10-7.el7.x86_64.rpm -rw-r--r-- 1 root root 195388 Apr 5 15:15 compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm -rw-r--r-- 1 root root 2694664264 Apr 5 17:16 oracle-database-ee-19c-1.0-1.x86_64.rpm -rw-r--r-- 1 root root 18204 Feb 14 2019 oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm -rw-r--r-- 1 root root 194000 Apr 5 15:19 readline-6.2-11.el7.i686.rpm -rw-r--r-- 1 root root 121734 Apr 5 15:11 rlwrap-0.43-1.el7.x86_64.rpm-rw-r--r-- 1 root root 126276 Feb 10 02:40 rlwrap-0.43-5.el8.x86_64.rpm
2. 主要是oracle的包安裝時會報錯, 需要提前進行處理
發現preinstall 還有很多包沒安裝也就會報錯需要安裝其他的包
yum install -y gcc-c++ make yum install -y ksh yum install -y sysstat yum install -y xorg-x11-utils yum install java-11-openjdk-devel yum install -y libnsl rpm -ivh libaio-devel-0.3.110-12.el8.x86_64.rpm rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm rpm -ivh compat-libcap1-1.10-7.el7.x86_64.rpm
yum install libnsl-2.28-72.el8.i686
dnf install libnsl
發現yum 有時候安裝不成功 可以使用 dnf 來進行安裝
https://www.cnblogs.com/askscuti/p/10984142.html
以及需要設置一個兼容性設置
export CV_ASSUME_DISTID=RHEL7.6
之后可以進行安裝, 為了防止digest失敗可以使用如下命令
注意 需要先安裝幾個compat 開頭的包
然后安裝rlwrap 可以避免輸入命令總是出錯.
rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm --nodigest --nofiledigest
3. 設置字符集等
vim /etc/init.d/oracledb_ORCLCDB-19c export ORACLE_VERSION=19c export ORACLE_SID=ORA19C export TEMPLATE_NAME=General_Purpose.dbc export CHARSET=ZHS16GBK export PDB_NAME=ORA19CPDB export LISTENER_NAME=LISTENER export NUMBER_OF_PDBS=1 export CREATE_AS_CDB=true
4. 增加環境變量設置
可以與 SQL2019公用一個配置文件
vim /etc/profile.d/db.sh
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1 export PATH=$PATH:/opt/oracle/product/19c/dbhome_1/bin export ORACLE_SID=ORA19C
5. 增加修改了 PID的配置文件信息
cd /etc/sysconfig/
scp oracledb_ORCLCDB-19c.conf oracledb_ORA19C-19c.conf
6. 進行設置
/etc/init.d/oracledb_ORCLCDB-19c configure
可以進行設置密碼 成功之后
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
/opt/oracle/cfgtoollogs/dbca/ORA19C.
Database Information:
Global Database Name:ORA19C
System Identifier(SID):ORA19C
Look at the log file "/opt/oracle/cfgtoollogs/dbca/ORA19C/ORA19C.log" for further details.
Database configuration completed successfully. The passwords were auto generated, you must change them by connecting to the database using 'sqlplus / as sysdba' as the oracle user
等待較長時間即可 一般這一步不會出問題
7. 設置命令行別名
vim /etc/profile.d/db.sh alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman'
8. 設置開機自動啟動
vim /etc/oratab 將里面 最后一句話設置從N 修改為Y 允許啟動 ORA19C:/opt/oracle/product/19c/dbhome_1:Y 設置 Oracle啟動命令
vim /usr/bin/oracle.sh 增加的內容為:
#! /bin/bash # script For oracle19c.service /opt/oracle/product/19c/dbhome_1/bin/lsnrctl start /opt/oracle/product/19c/dbhome_1/bin/dbstart /opt/oracle/product/19c/dbhome_1
設置權限
chmod 777 /usr/bin/oracle.sh
設置一個 systemd的服務
vim /etc/systemd/system/oracle19c.service
增加內容為:
[Unit]
Description=Oracle19c
After=syslog.target network.target
[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
Type=oneshot
RemainAfterExit=yes
User=oracle
Environment="ORACLE_HOME=/opt/oracle/product/19c/dbhome_1"
ExecStart=/usr/bin/oracle.sh
[Install]
WantedBy=multi-user.target
設置服務自動啟動
systemctl daemon-reload && systemctl enable oracle19c
9. 重啟驗證.
10. 發現centos8 上面 systemd 總是無法將oracle數據庫拉起來..
沒辦法准備換用其他方式
將上面的 服務關掉 systemctl disable oracle19c 設置 開機自動啟動的命令 chmod 777 /etc/rc.d/rc.local 設置命令 vim /etc/rc.d/rc.local 增加一行 /bin/su -u oracle -c /usr/bin/oracle.sh
重啟驗證