AlmaLinux-8、Redhat-8、RockyLinux-8-Oracle-19C安装教程
·
By------云南乐嘟信息技术有限公司------
有.问.题.进.群.咨.询.:831037125
1、设置hostname
hostnamectl set-hostname oracle

2、设置hosts映射
echo "172.18.12.82 oracle" >> /etc/hosts

重启机器:
reboot
3、安装依赖
dnf install -y bc \
binutils \
elfutils-libelf \
elfutils-libelf-devel \
fontconfig-devel \
glibc \
glibc-devel \
ksh \
libaio \
libaio-devel \
libXrender \
libXrender-devel \
libX11 \
libXau \
libXi \
libXtst \
libgcc \
librdmacm-devel \
libstdc++ \
libstdc++-devel \
libxcb \
make \
net-tools \
smartmontools \
sysstat \
unzip \
libnsl \
libnsl2 \
zip \
unzip

4、创建用户和用户组
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54324 backupdba
groupadd -g 54325 dgdba
groupadd -g 54326 kmdba
groupadd -g 54330 racdba
useradd -u 54321 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba oracle
echo "oracle" | passwd oracle --stdin

5、为 Oracle 用户设置安全限制
执行以下命令编辑30-oracle.conf文件,设置oracle用户的安全限制
cat >/etc/security/limits.d/30-oracle.conf<<EOF
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
EOF

6、设置环境变量
cat >> /etc/profile<<EOF
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384 ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
EOF
source /etc/profile

7、修改linux内核参数,执行以下命令编辑98-oracle.conf文件
cat >/etc/sysctl.d/98-oracle.conf<<EOF
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
EOF
然后执行以下命令重新加载内核参数
sysctl --system

8、为 Oracle Database 19c 创建目录
mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1
mkdir -p /u01/oradata
chown -R oracle:oinstall /u01
chmod -R 775 /u01

9、为 Oracle 用户配置 Linux 环境变量,执行su oracle切换到oracle用户下,然后执行追加环境变量
su - oracle
vi ~/.bash_profile
# Oracle Settings
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_HOSTNAME=oracle
export ORACLE_UNQNAME=cdb1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export ORA_INVENTORY=/u01/app/oraInventory
export ORACLE_SID=orcl
export PDB_NAME=pdb1
export DATA_DIR=/u01/oradata
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export LC_ALL="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
source ~/.bash_profile

10、解压安装包
su - root
mkdir /u01/package/
cd /u01/package/
unzip V982063-01.zip -d /u01/app/oracle/product/19.3.0/dbhome_1/
chown -R oracle:oinstall /u01/
11、安装数据库
su - oracle
cd /u01/app/oracle/product/19.3.0/dbhome_1/
export CV_ASSUME_DISTID=RHEL8.0
./runInstaller -ignorePrereq -waitforcompletion -silent \
oracle.install.option=INSTALL_DB_SWONLY \
ORACLE_HOSTNAME=${ORACLE_HOSTNAME} \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=${ORA_INVENTORY} \
ORACLE_HOME=${ORACLE_HOME} \
ORACLE_BASE=${ORACLE_BASE} \
oracle.install.db.InstallEdition=EE \
oracle.install.db.OSDBA_GROUP=dba \
oracle.install.db.OSBACKUPDBA_GROUP=backupdba \
oracle.install.db.OSDGDBA_GROUP=dgdba \
oracle.install.db.OSKMDBA_GROUP=kmdba \
oracle.install.db.OSRACDBA_GROUP=racdba \
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \
DECLINE_SECURITY_UPDATES=true

su - root
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.3.0/dbhome_1/root.sh

12、创建数据库,执行以下命令创建数据库
su - oracle
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname ${ORACLE_SID} -sid ${ORACLE_SID} \
-responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword Abc123456 \
-systemPassword Abc123456 \
-createAsContainerDatabase true \
-numberOfPDBs 1 \
-pdbName ${PDB_NAME} \
-pdbAdminPassword Abc123456 \
-databaseType MULTIPURPOSE \
-automaticMemoryManagement false \
-totalMemory 12288 \
-storageType FS \
-datafileDestination "${DATA_DIR}" \
-redoLogFileSize 512 \
-emConfiguration NONE \
-ignorePreReqs

13、添加防火墙端口
su - root
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload
14、启动数据库
su - oracle
vi /etc/oratab
将类似
“orcl:/data/app/oracle/product/12.2.0/dbhome_1:N”-->“orcl:/data/app/oracle/product/12.2.0/dbhome_1:Y”即“N”改为“Y”

lsnrctl start

dbstart $ORACLE_HOME &(重启机器后启动数据库时才需要执行)

15、添加一个存储过程,能够在开机时自动将pdb打开
su - oracle
sqlplus / as sysdba

CREATE TRIGGER open_all_pdbs
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/

16、监听相关命令
执行su - oracle命令切换到oracle用户,使用以下命令启动监听
lsnrctl start //启动oracle数据库监听
lsnrctl status //查看oracle数据库监听状态
lsnrctl stop //停用oracle数据库监听
更多推荐
所有评论(0)