当前环境为centos7.9
提前环境准备
1、主机名
hostnamectl set-hostname dbs
2、修改hosts文件
新增
172.18.16.13 dbs
3、关闭THP
vi /etc/rc.d/rc.local
添加
echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled
echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag
该参数需要重启生效,当前为always,重启生效为nerver,但暂不重启
cat /sys/kernel/mm/transparent_hugepage/enabled 查看当前状态
4、修改系统参数
vi /etc/pam.d/login
添加
session required pam_limits.so
5、修改selinux
vi /etc/selinux/config
修改为
SELINUX=disabled
或使用
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
当前为Permissive,重启永久生效,但暂不重启
6、修改网络服务
vi /etc/sysconfig/network
添加
NOZEROCONF=yes
7、修改sysctl文件
vi /etc/sysctl.conf
添加
kernel.shmall = 67108864
kernel.shmmax = 192414534861
kernel.shmmni = 4096
kernel.sem = 12000 1536000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 3145728
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.ipfrag_high_thresh = 16777216
net.ipv4.ipfrag_low_thresh = 15728640
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
vm.min_free_kbytes= 1048576
⚫ kernel.shmall 参数:根据节点物理内存/PAGE_SIZE 计算,以 256GB 为例,即 236102410241024/4096=67108864。 使用 getconf PAGE_SIZE 命令可查看 PAGE_SIZE 值,当前为4096
⚫ kernel.shmmax 参数:需要根据实际物理内存计算,建议 kernel.shmmax 参数取值为节点 物理内存的 70%,单位为字节,以 256GB 为例,即 25670%10241024*1024=192414534860.8(向上取整为 192414534861)。
⚫ kernel.sem 参数:如果单个数据库需要支持的 process 数超过 12000,请按照实际情 况配置第一个值。
继续添加
vm.nr_hugepages= 64922
vm.nr_hugepages 的大小为 sga_max_size + 2GB,sga_max_size 即分配给 SGA 的内存容量 大小,SGA 的计算方法在 3.2.3.1 Oracle 节点内存规划中有详细说明,完整计算公式为: vm.nr_hugepages = (节点物理内存大小 0.65 0.75 + 2) * 1024 / 内存大页尺寸
激活并检验
sysctl -p
sysctl -a | grep nr_hugepages
8、限制oracle用户资源
vi /etc/security/limits.conf
添加
oracle soft nproc 65536
oracle hard nproc 65536
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft stack 65536
oracle soft memlock 241591910
oracle hard memlock 241591910
⚫ nproc&nofile:固定值 65536
⚫ memlock 的计算原则(计算结果向下取整):物理内存的 90% (单位 KB),以 256GB 内存 为例,即25690%1024*1024=241591910
9、修改时间同步
注释
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
添加
server ntp.aliyun.com iburst
10、重启
reboot
安装部署
1、新增依赖
yum install -y bc binutils elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel libxcb libibverbs make smartmontools sysstat libnsl2 net-tools nfs-utils libnsl
2、新增用户和用户组
groupadd -g 1001 oinstall
groupadd -g 1002 dba
groupadd -g 1003 oper
usermod -u 1000 -g oinstall -G dba,oper -m -d /home/oracle oracle
echo new_passwd_example |passwd --stdin oracle
3、增加oracle软件目录
mkdir -p /data/app/oraInventory
mkdir -p /data/app/arch
mkdir -p /data/app/oracle/product/19.3.0/db
4、修改部分文件夹
chown -R oracle:oinstall /data
chmod -R 775 /data
5、配置用户环境变量
su oracle
vi .bash_profile
添加
export PATH
export TMPDIR=$TMP
export ORACLE_HOSTNAME=dbs
export ORACLE_BASE=/data/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/db
export ORACLE_SID=orcl
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
生效
source .bash_profile
6、oracle软件安装前调试
官方下载地址
https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html
解压到目录
unzip /home/LINUX.X64_193000_db_home.zip -d /data/app/oracle/product/19.3.0/db
修改目录属性
chown -R oracle:oinstall /data/app/oracle/product/19.3.0/db
vi /data/app/oracle/product/19.3.0/db/cv/admin/cvu_config
修改
CV_ASSUME_DISTID=OEL7
#避免上安装 Oracle 19c 时出现错误提示
7、安装oracle软件
步骤 1
使用mobaxterm查看地址和端口
设置变量
export DISPLAY=172.18.4.16:0.0
echo $DISPLAY
静默安装也提前设置
步骤 2
复制oracle安装配置文件
cp -rp /data/app/oracle/product/19.3.0/db/install/response/db_install.rsp /home/oracle/
vi /home/oracle/db_install.rsp
配置
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/app/oraInventory
ORACLE_HOME=
ORACLE_BASE=/data/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
oracle.install.db.rootconfig.executeRootScript=true
oracle.install.db.rootconfig.configMethod=ROOT
步骤 3
安装
/data/app/oracle/product/19.3.0/db/runInstaller -silent -responseFile /home/oracle/db_install.rsp
8、创建监听
复制监听文件
cp /data/app/oracle/product/19.3.0/db/assistants/netca/netca.rsp /home/oracle/
创建监听
netca -silent -responseFile /home/oracle/netca.rsp
查看监听状态
lsnrctl status
9、写入服务
vi /etc/oratab
写入
orcl:/data/app/oracle/product/19.3.0/db:Y
vi /etc/systemd/system/oracle.service
写入
[Unit]
Description=Oracle Database Service
After=network.target
[Service]
User=oracle
Group=oinstall
Type=forking
ExecStart=/data/app/oracle/product/19.3.0/db/bin/dbstart /data/app/oracle/product/19.3.0/db >> /var/log/oracle/startup.log 2>&1
ExecStop=/data/app/oracle/product/19.3.0/db/bin/dbshut /data/app/oracle/product/19.3.0/db >> /var/log/oracle/shutdown.log 2>&1
Restart=on-failure
[Install]
WantedBy=multi-user.target
10、创建数据库
复制
cp -rp /data/app/oracle/product/19.3.0/db/assistants/dbca/dbca.rsp /home/oracle/
vi /home/oracle/dbca/.rsp
修改
gdbName=orcl #设置数据库名称
sid=orcl #设置数据库 SID
createAsContainerDatabase=true #是否创建容器数据库
numberOfPDBs=1 #设置容器数据库数量
pdbName=pdb #设置容器数据库名称
pdbAdminPassword=oracle #设置容器数据库管理员密码
templateName=General_Purpose.dbc
sysPassword=oracle
systemPassword=oracle
dbsnmpPassword=oracle
安装
dbca -silent -createDatabase -responseFile /home/oracle/dbca.rsp
11、检验
监听器
/data/app/oracle/product/19.3.0/db/network/admin/listener.ora
lsnrctl status
tns
/data/app/oracle/product/19.3.0/db/network/admin/tnsnames.ora
tnsping xxx
oracle服务
systemctl daemon-reload
systemctl status
陈徂它:文章真不错https://www.nnjjr.com/a/29826.html
陈徂它 08-31