一、系统规划
|操作系统| Oracle linux 7 |
|-数据库版本-|-oracle 19c-|
二、系统配置
2.1 设置主机名(root用户)
hostnamectl set-hostname ora-si-asm
hostname -f
ora-si-asm
2.2 配置host文件(root用户)
root@localhost ~]# echo "192.168.56.40 ora-si-asm" >> /etc/hosts
2.3 创建用户组和设置grid,oracle用户密码(root用户)
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54324 asmadmin
groupadd -g 54325 asmoper
groupadd -g 54326 asmdba
useradd -g oinstall -G dba,asmdba,oper oracle
useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
echo "oracle" |passwd grid --stdin
echo "oracle" | passwd oracle --stdin
2.4 创建软件目录(root用户)
mkdir -p /data/app/grid
mkdir -p /data/app/19.3.0/grid
mkdir -p /data/app/oracle/product/19.3.0/dbhome_1
mkdir -p /data/app/oraInventory
chown -R oracle:oinstall /data
chown -R grid:oinstall /data/app/grid
chown -R grid:oinstall /data/app/19.3.0
chmod -R 775 /data/
2.5 配置grid和oracle用户的环境变量文件(root用户)
cat >> /home/grid/.bash_profile <<"EOF"
umask 022
export ORACLE_SID=+ASM
export ORACLE_BASE=/data/app/grid
export ORACLE_HOME=$ORACLE_BASE/19.3.0/grid
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export TMP=/tmp
export TMPDIR=$TMP
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_PATH=.:$ORACLE_BASE/dba_scripts/sql:$ORACLE_HOME/rdbms/admin
export SQLPATH=$ORACLE_HOME/sqlplus/admin
#export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
export NLS_LANG="AMERICAN_CHINA.ZHS16GBK"
alias sas='sqlplus / as sysdba'
EOF
cat >> /home/oracle/.bash_profile <<"EOF"
umask 022
export ORACLE_SID=SIASM19C
export ORACLE_BASE=/data/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export TMP=/tmp
export TMPDIR=$TMP
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_PATH=.:$ORACLE_BASE/dba_scripts/sql:$ORACLE_HOME/rdbms/admin
export SQLPATH=$ORACLE_HOME/sqlplus/admin
#export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
export NLS_LANG="AMERICAN_CHINA.ZHS16GBK"
alias sas='sqlplus / as sysdba'
EOF
2.6 禁用selinux(root用户)
sed -i '/^SELINUX=.*/ s//SELINUX=disabled/' /etc/selinux/config
2.7、配置内核参数(root用户)
2.7.1、修改/etc/sysctl.conf文件
cat >> /etc/sysctl.conf <<"EOF"
vm.swappiness = 1
vm.dirty_background_ratio = 3
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
kernel.shmmni = 4096
kernel.shmall = 4194304
kernel.shmmax = 17179869183
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.panic_on_oops = 1
kernel.watchdog_thresh=30
EOF
# 生效
sysctl -p
2.7.2、修改/etc/security/limits.conf文件
echo "grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240
grid hard stack 32768
grid soft nproc 2047
grid hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
oracle soft nproc 2047
oracle hard nproc 16384
oracle hard memlock 8145728
oracle soft memlock 8145728
root soft nproc 2047 " >> /etc/security/limits.conf
2.7.3、修改/etc/pam.d/login文件(root用户)
echo "session required pam_limits.so" >> /etc/pam.d/login
2.7.4、修改/etc/profile文件(root用户)
cat >> /etc/profile << "EOF"
if [ $USER = "oracle" ] || [ $USER = "grid" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
EOF
2.8、将NOZEROCONF=yes添加到/etc/sysconfig/network文件中(root用户)
echo 'NOZEROCONF=yes' >> /etc/sysconfig/network
2.9、禁用透明大页(root用户)
cat >> /etc/rc.local <<"EOF"
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
EOF
chmod +x /etc/rc.d/rc.local
sh /etc/rc.local
cat /sys/kernel/mm/transparent_hugepage/defrag
cat /sys/kernel/mm/transparent_hugepage/enabled
2.10 防火墙开放(root用户)
## 最简单就是关闭防火墙,如果防火墙打开则开放1521端口
firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --reload
三、软件包准备
3.1 上传软件包
。。。。。略
四、安装前预检查
4.1 安装依赖 (配置yum源-省略)
yum -y install autoconf
yum -y install automake
yum -y install binutils
yum -y install binutils-devel
yum -y install bison
yum -y install cpp
yum -y install dos2unix
yum -y install ftp
yum -y install gcc
yum -y install gcc-c++
yum -y install lrzsz
yum -y install python-devel
yum -y install compat-libcap1
yum -y install compat-libstdc++-33
yum -y install compat-libstdc++-33.i686
yum -y install glibc-*
yum -y install glibc-*.i686
yum -y install libXpm-*.i686
yum -y install libXext
yum -y install libXext.i686
yum -y install libXtst
yum -y install libXtst.i686
yum -y install libX11
yum -y install libX11.i686
yum -y install libXau
yum -y install libXau.i686
yum -y install libxcb
yum -y install libxcb.i686
yum -y install libXi
yum -y install libXi.i686
yum -y install libstdc++.i686
yum -y install libstdc++-devel
yum -y install libstdc++-devel.i686
yum -y install libaio
yum -y install libaio.i686
yum -y install libaio-devel
yum -y install libaio-devel.i686
yum -y install ksh
yum -y install libXp
yum -y install libaio-devel
yum -y install numactl
yum -y install numactl-devel
yum -y install make -y
yum -y install sysstat -y
yum -y install unixODBC
yum -y install unixODBC-devel
yum -y install elfutils-libelf-devel
yum -y install redhat-lsb-core
yum -y install unzip
yum -y install libXrender
yum -y install libXrender-devel
yum -y install nfs-utils
yum -y install smartmontools
yum -y install tigervnc
4.2 udv 配置
1.生成规则文件
for i in c d ; do echo "KERNEL==\"sd*\",ENV{DEVTYPE}==\"disk\",SUBSYSTEM==\"block\",PROGRAM==\"/usr/lib/udev/scsi_id -g -u -d \$devnode\",RESULT==\"`/usr/lib/udev/scsi_id -g -u /dev/sd$i`\",SYMLINK+=\"oracleasm/asm-disk$i\" OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules ;done
2.查看规则文件
[root@ora-si-asm ~]# cat /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VB3a8c5a9a-f13bd2e5",SYMLINK+="oracleasm/asm-diskb" OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sd*",ENV{DEVTYPE}=="disk",SUBSYSTEM=="block",PROGRAM=="/usr/lib/udev/scsi_id -g -u -d $devnode",RESULT=="1ATA_VBOX_HARDDISK_VB5063d8c3-bc9912d3",SYMLINK+="oracleasm/asm-diskc" OWNER="grid", GROUP="asmadmin", MODE="0660"
3.执行 partprobe 识别
[root@ora-si-asm ~]# partprobe /dev/sdc
[root@ora-si-asm ~]# partprobe /dev/sdd
- 重启UDEV服务
[root@ora-si-asm ~]#udevadm control --reload-rules
4.权限验证
[root@ora-si-asm ~]# ll -athr /dev/oracleasm/*
lrwxrwxrwx 1 root root 6 May 30 10:31 /dev/oracleasm/asm-diskb -> ../sdb
lrwxrwxrwx 1 root root 6 May 30 10:31 /dev/oracleasm/asm-diskc -> ../sdc
lrwxrwxrwx 1 root root 6 May 30 10:31 /dev/oracleasm/asm-diskd -> ../sdd
lrwxrwxrwx 1 root root 6 May 30 10:31 /dev/oracleasm/asm-diske -> ../sde
[root@ora-si-asm ~]# ll -athr /dev/sd* |grep -v sda
brw-rw---- 1 grid asmadmin 8, 16 May 30 10:31 /dev/sdb
brw-rw---- 1 grid asmadmin 8, 32 May 30 10:31 /dev/sdc
brw-rw---- 1 grid asmadmin 8, 48 May 30 10:31 /dev/sdd
brw-rw---- 1 grid asmadmin 8, 64 May 30 10:31 /dev/sde
五、安装GI软件
1. 解压安装包
解压至 $ORACLE_HOME (注意grid用户家目录:/u01/app/19.3.0/grid)
chmod -R 77t /soft
su - grid
unzip -q /soft/LINUX.X64_193000_grid_home.zip -d /u01/app/19.3.0/grid)
su - root
cd /u01/app/19.3.0/grid/cv/rpm/
rpm -ivh cvuqdisk-1.0.10-1.rpm
2. 安装Gi软件(grid用户)
cd $ORACLE_HOME
./gridSetup.sh
- 选择 第2个 HA_CONFIG

2.选择ASM磁盘

3.输入密码,选择统一密码

4.是否使用EM ,跳过

5.选择用户组,保持默认

6.选择目录,环境变量已经配置,保持不变

7. 环境变量已经配置,保持不变

8.是否自动执行脚本,选择自动需要输入相应的密码, 选择手工

9.检查结果,根据实际修复或者跳过

10. 安装信息汇总,可以保存相应文件

11. 执行脚本 (root用户),在开一窗口执行

12.安装完成

3. Grid安装验证
[grid@ora-si-asm:/data/app/19.3.0/grid]$crsctl stat res -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER.lsnr
ONLINE INTERMEDIATE ora-si-asm Not All Endpoints Re
gistered,STABLE
ora.OCR.dg
ONLINE ONLINE ora-si-asm STABLE
ora.asm
ONLINE ONLINE ora-si-asm Started,STABLE
ora.ons
OFFLINE OFFLINE ora-si-asm STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 ONLINE ONLINE ora-si-asm STABLE
ora.diskmon
1 OFFLINE OFFLINE STABLE
ora.evmd
1 ONLINE ONLINE ora-si-asm STABLE
--------------------------------------------------------------------------------
[grid@ora-si-asm:/data/app/19.3.0/grid]$lsnrctl status
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 01-JUN-2025 14:47:18
Copyright (c) 1991, 2019, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora-si-asm)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 01-JUN-2025 14:32:02
Uptime 0 days 0 hr. 15 min. 16 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /data/app/19.3.0/grid/network/admin/listener.ora
Listener Log File /data/app/grid/diag/tnslsnr/ora-si-asm/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora-si-asm)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM", status READY, has 1 handler(s) for this service...
Service "+ASM_DATA" has 1 instance(s).
Instance "+ASM", status READY, has 1 handler(s) for this service...
Service "+ASM_OCR" has 1 instance(s).
Instance "+ASM", status READY, has 1 handler(s) for this service...
The command completed successfully
六、ASM 磁盘组创建
1. ASM磁盘组创建(grid用户)
执行ASMCA,打开后界面如下:

2. 添加DATA磁盘组

3.添加完成
添加完成的界面

七、数据库软件安装
1.解压软件(root)
chmod -R 775 /soft
su - oracle
unzip -q /soft/LINUX.X64_193000_db_home.zip /u01/app/oracle/product/19.3.0/dbhome_1)
2. 安装数据库软件(oracle)
1.选择 仅安装软件

2.选择单实例

3.选择企业版

4.选择安装目录,环境变量已配置,下一步

5. 选择用户组

6.是否自动执行脚本,跳过,手工执行

7.执行先决条件检查,根据实际修复或忽略

8.摘要,是否保存相应文件,这使您可以观察根脚本自动执行记录在响应文件中的方式。选择 /tmp目录以保存db.rsp响应文件。单击保存,然后单击安装

9.开始安装,有进度条,安装过程会跳出手工执行脚本,使用root用户执行即可

10. 安装完成

八、DBCA建库
1.建库(oracle)
DBCA
- 选择create database

2.选择自定义配置

3.选择OLTP模式

4.配置DBName和SID ,保持和前面环境变量设置一致

- 选择ASM存储

- 跳过,后期设置

7.选择监听

- database vault,跳过

9.设置SGA,字符集,连接数,根据实际修改

10.EM 配置,跳过

11.设置密码,使用统一密码

12.建库

13.摘要汇总和相应文件保存

14.安装,有进度条

15.安装完成

九、测试
。。。。。略
2913

被折叠的 条评论
为什么被折叠?



