简化流程:通过响应文件在Red Hat 7.6上静默安装Oracle 19C

2023年 12月 22日 71.3k 0

目录

  • 一、前言
  • 二、安装前准备工作
    • 1、硬件要求
      • 1.1、内存要求
      • 1.2、Swap Space
      • 1.3、Automatic Memory Management
      • 1.4、磁盘空间要求
    • 2、软件要求
      • 2.1、适用于 Linux x86-64 操作系统要求
      • 2.2、适用于 Linux x86-64 内核要求
      • 2.3、适用于 Linux x86-64 的 Oracle 数据库包要求
    • 3、关闭透明页
    • 4、配置主机名解析
    • 5、创建所需的操作系统组和用户
    • 6、配置Oracle软件安装用户的资源限制
    • 7、为Linux配置内核参数
    • 8、创建所需的软件目录并授权
    • 9、关闭numa功能
    • 10、禁用SELINUX
    • 11、关闭防火墙
    • 12、修改 /dev/shm大小
    • 13、安装Oracle数据库所需软件包
      • 13.1、配置YUM源
      • 13.2、安装必要的软件包
    • 14、配置Oracle软件所有者环境
    • 15、重启操作系统
  • 三、关于响应文件
    • 1、什么是静默安装
    • 2、什么是响应文件
    • 3、响应文件的工作原理
    • 4、选择静默安装的原因
  • 四、安装Oracle数据库软件
    • 1、上传Oracle数据库安装软件到服务器并解压
    • 2、准备响应文件
    • 3、编辑db_install.rsp响应文件
    • 4、安装数据库软件
    • 5、执行配置脚本
  • 五、配置监听
    • 1、编辑 netca.rsp响应文件
    • 2、使用响应文件创建监听
    • 3、监听管理
      • 3.1、查看监听状态
      • 3.2、关闭监听
      • 3.3、启动监听
  • 六、创建数据库
    • 1、编辑dbca.rsp响应文件
    • 2、使用响应文件创建数据库
  • 七、数据库管理入门
    • 1、启用SQL*Plus从命令行连接到数据库
    • 2、查看数据库基础信息
    • 3、查看数据库版本
    • 4、查看数据库字符集
    • 5、查看数据库块大小
    • 6、实例的启动与关闭
      • 6.1、启动
      • 6.2、关闭
    • 7、取消180天密码过期限制
    • 8、关闭审计
    • 9、调整db_files
  • 八、总结
  • 九、写在后面

一、前言

  在实际部署中,为了提高安装效率和简化操作流程,静默安装技术变得越来越重要。本文详细介绍了在Red Hat Linux 7.6文件系统中使用响应文件静默安装Oracle 19C数据库的步骤以及响应文件的概念和作用,通过本文的学习,读者可以轻松掌握在Linux 7.6文件系统中使用响应文件静默安装Oracle 19C数据库的技巧和方法。使用响应文件可以减少手动配置的繁琐过程,提高安装的一致性和效率。希望本文能为读者在搭建Oracle数据库环境时提供指导和帮助,使其能够顺利完成安装工作,并为后续的数据库应用开发提供良好的基础。

二、安装前准备工作

1、硬件要求

1.1、内存要求

最低:1 GB 内存
建议:2 GB 或更多内存
[root@hellodba ~]# grep MemTotal /proc/meminfo
MemTotal: 2851852 kB

1.2、Swap Space

        RAM       Swap Space
在1GB到2GB之间 RAM大小的1.5倍
2GB到16GB之间 等于RAM的大小
超过16GB 等于16GB

[root@hellodba ~]# grep SwapTotal /proc/meminfo
SwapTotal: 3170300 kB

1.3、Automatic Memory Management

  从Oracle Database 11g开始,自动内存管理功能需要更多的共享内存(/dev/shm)和文件描述符。在Linux系统中,’/dev/shm’目录是一个特殊的目录,用于实现共享内存,默认是系统内存的50%。它是一个临时文件系统,通常位于RAM(内存)中,而不是硬盘上,并且在系统重启时会被清空。因此,’/dev/shm’目录只适合用于短期存储和进程间通信,不能用于长期存储数据。’/dev/shm’大小应该大于SGA+PGA的总内存大小,在Linux系统上,如果操作系统’/dev/shm’装载大小对于Oracle系统全局区域(SGA)和程序全局区域(PGA)来说太小,则会导致ORA-00845错误。

1.4、磁盘空间要求

目录/tmp至少有1GB空间,如果小于所需空间,请从目录中删除不必要的文件满足磁盘空间需求。
[root@hellodba ~]# df -h /tmp
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 57G 7.1G 50G 13% /

       安装类型   软件文件的磁盘空间要求(GB)
企业版 7.2
标准版 7.2

 

[root@hellodba ~]# df -h /u01
Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 80G 33M 80G 1% /u01

2、软件要求

2.1、适用于 Linux x86-64 操作系统要求

//需要以下或更高版本的操作系统:
Supported Oracle Linux 8 Distributions for x86-64
Supported Oracle Linux 7 Distributions for x86-64
Supported Red Hat Enterprise Linux 8 Distributions for x86-64
Supported Red Hat Enterprise Linux 7 Distributions for x86-64
Supported SUSE Linux Enterprise Server 12 Distributions for x86-64
Supported SUSE Linux Enterprise Server 15 Distributions for x86-64

[root@hellodba ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.6 (Maipo)

2.2、适用于 Linux x86-64 内核要求

//支持以下 Linux x86-64 内核
Oracle Linux 8.1 with the Unbreakable Enterprise Kernel 6: 5.4.17-2011.0.7.el8uek.x86_64 or later
Oracle Linux 8 with the Red Hat Compatible kernel: 4.18.0-80.el8.x86_64 or later
Oracle Linux 7.4 with the Unbreakable Enterprise Kernel 4: 4.1.12-124.19.2.el7uek.x86_64 or later
Oracle Linux 7.4 with the Unbreakable Enterprise Kernel 5: 4.14.35-1818.1.6.el7uek.x86_64 or later
Oracle Linux 7.7 with the Unbreakable Enterprise Kernel 6: 5.4.17-2011.4.4.el7uek.x86_64 or later
Oracle Linux 7.5 with the Red Hat Compatible Kernel: 3.10.0-862.11.6.el7.x86_64 or later
Red Hat Enterprise Linux 8: 4.18.0-80.el8.x86_64 or later
Red Hat Enterprise Linux 7.5: 3.10.0-862.11.6.el7.x86_64 or later
SUSE Linux Enterprise Server 15: 4.12.14-23-default or later
SUSE Linux Enterprise Server 12 SP3: 4.4.162-94.72-default or later

[root@hellodba ~]# uname -r
3.10.0-957.el7.x86_64

2.3、适用于 Linux x86-64 的 Oracle 数据库包要求

//Packages for Red Hat Enterprise Linux 7
bc
binutils
compat-libcap1
compat-libstdc++-33
elfutils-libelf
elfutils-libelf-devel
fontconfig-devel
glibc
glibc-devel
ksh
libaio
libaio-devel
libX11
libXau
libXi
libXtst
libXrender
libXrender-devel
libgcc
libstdc++
libstdc++-devel
libxcb
make
smartmontools
sysstat
gcc
gcc-c++
gcc-info
gcc-locale
gcc48
gcc48-info
gcc48-locale
gcc48-c++

3、关闭透明页

  从Red Hat Enterprise Linux 6、Oracle Linux 6、SUSE 11和Unbreakable Enterprise Kernel 2(UEK2)内核开始,Transparent HugePages在运行时默认启用。然而,透明的HugePages可能会导致内存分配延迟,因为内存是动态分配的。因此,甲骨文建议您在所有甲骨文数据库服务器上禁用透明HugePages,以避免性能问题。

//查看透明页是否启用,显示[always]表示Transparent HugePages是启用的
[root@hellodba ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
[always] madvise never
[root@hellodba ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never

//禁用透明页
[root@hellodba ~]# vi /etc/rc.d/rc.local
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
[root@hellodba ~]# chmod +x /etc/rc.d/rc.local
[root@hellodba ~]# reboot

//透明页已关闭
[root@hellodba ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
always madvise [never]
[root@hellodba ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]

4、配置主机名解析

[root@hellodba ~]# echo "192.168.0.55 hellodba" >> /etc/hosts
[root@hellodba ~]# ping hellodba
PING hellodba (192.168.0.55) 56(84) bytes of data.
64 bytes from hellodb (192.168.0.55): icmp_seq=1 ttl=64 time=0.013 ms

5、创建所需的操作系统组和用户

[root@hellodba ~]# /usr/sbin/groupadd -g 54321 oinstall
[root@hellodba ~]# /usr/sbin/groupadd -g 54322 dba
[root@hellodba ~]# /usr/sbin/groupadd -g 54323 oper
[root@hellodba ~]# /usr/sbin/groupadd -g 54324 backupdba
[root@hellodba ~]# /usr/sbin/groupadd -g 54325 dgdba
[root@hellodba ~]# /usr/sbin/groupadd -g 54326 kmdba
[root@hellodba ~]# /usr/sbin/useradd -u 54321 -g oinstall -G dba,backupdba,dgdba,kmdba,oper oracle
[root@hellodba ~]# echo "hellodba" | passwd --stdin oracle
[root@hellodba ~]# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba)

6、配置Oracle软件安装用户的资源限制

[root@hellodba ~]# vi /etc/security/limits.conf
#ORACLE SETTING
#打开文件描述符大小
oracle soft nproc 16384
oracle hard nproc 16384
#单个用户可用的进程数
oracle soft nofile 16384
oracle hard nofile 65536
#进程堆栈段的大小
oracle soft stack 10240
oracle hard stack 32768

7、为Linux配置内核参数

在Oracle数据库安装期间,可以生成并运行修复脚本,以检查和设置成功安装数据库所需的内核参数值。建议手动预先修改好。

[root@hellodba ~]# vi /etc/sysctl.conf
#ORACLE SETTING
#可以拥有的异步IO请求数
fs.aio-max-nr = 1048576
#允许文件句柄的最大数目
fs.file-max = 6815744
#信号参数
kernel.sem = 250 32000 100 128
#IP V4的端口范围
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 = 1048586
#当系统检测到oops时,重新启动系统,以便系统能够重新初始化恢复正常工作
kernel.panic_on_oops = 1
#单个共享内存段最大值,让数据库在一个共享段里面的可以容纳整个SGA
#最大值:比物理内存小1字节
#(kernel.shmmax = 物理内存*1024*1024*1024-1)
kernel.shmmax = 2684354560
#控制共享内存页数(kernel.shmall = shmmax/4096)
kernel.shmall = 655360
#共享内存的最大数量
kernel.shmmni = 4096
#当系统内存使用90%的时候开始使用交换页面
vm.swappiness=10
#默认是100,增大这个参数设置了虚拟内存回收directory和i-node缓冲的倾向,这个值越大。越容易回收。
vm.vfs_cache_pressure=200

8、创建所需的软件目录并授权

[root@hellodba ~]# mkdir -p /u01/app/oracle
[root@hellodba ~]# mkdir -p /u01/app/oraInventory
[root@hellodba ~]# mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
[root@hellodba ~]# mkdir -p /soft
[root@hellodba ~]# chown -R oracle:oinstall /u01
[root@hellodba ~]# chown -R oracle:oinstall /soft
[root@hellodba ~]# chmod -R 775 /u01
[root@hellodba ~]# chmod -R 775 /soft

9、关闭numa功能

//NUMA关闭前
[root@hellodba ~]# dmesg | grep -i numa
[ 0.000000] NUMA: Node 0 [mem 0x00000000-0x0009ffff] + [mem 0x00100000-0xbfffffff] -> [mem 0x00000000-0xbfffffff]
[ 0.000000] NUMA: Node 0 [mem 0x00000000-0xbfffffff] + [mem 0x100000000-0x1017fffff] -> [mem 0x00000000-0x1017fffff]

//关闭NUMA
[root@hellodba ~]# vi /etc/default/grub
将 GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet"
改 GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet numa=off"
[root@hellodba ~]# grub2-mkconfig -o /etc/grub2.cfg
[root@hellodba ~]# reboot

//NUMA关闭后
[root@hellodba ~]# dmesg | grep -i numa
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.10.0-957.el7.x86_64 root=UUID=cacc2dc0-9441-473d-ad25-dad067800baa ro crashkernel=auto rhgb quiet numa=off
[ 0.000000] NUMA turned off
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.10.0-957.el7.x86_64 root=UUID=cacc2dc0-9441-473d-ad25-dad067800baa ro crashkernel=auto rhgb quiet numa=off

10、禁用SELINUX

[root@hellodba ~]# getenforce
Enforcing
[root@hellodba ~]# vi /etc/selinux/config
将 SELINUX=enforcing
改 SELINUX= disabled
[root@hellodba ~]# setenforce 0
[root@hellodba ~]# getenforce
Permissive

11、关闭防火墙

[root@hellodba ~]# systemctl stop firewalld
[root@hellodba ~]# systemctl disable firewalld
[root@hellodba ~]# systemctl status firewalld

12、修改 /dev/shm大小

[root@hellodba ~]# echo "none /dev/shm tmpfs defaults,size=3096m 0 0" >> /etc/fstab
[root@hellodba ~]# mount -o remount /dev/shm
[root@hellodba ~]# df -h /dev/shm
Filesystem Size Used Avail Use% Mounted on
tmpfs 3.1G 0 3.1G 0% /dev/shm

13、安装Oracle数据库所需软件包

13.1、配置YUM源

[root@hellodba ~]# mount /dev/cdrom /mnt
[root@hellodba ~]# cd /etc/yum.repos.d
[root@hellodba yum.repos.d]# rm -rf *.repo
[root@hellodba yum.repos.d]# echo "[EL]" >> hellodba.repo
[root@hellodba yum.repos.d]# echo "name=Linux 7.6 DVD" >> hellodba.repo
[root@hellodba yum.repos.d]# echo "baseurl=file:///mnt" >> hellodba.repo
[root@hellodba yum.repos.d]# echo "gpgcheck=0" >> hellodba.repo
[root@hellodba yum.repos.d]# echo "enabled=1" >> hellodba.repo

13.2、安装必要的软件包

[root@hellodba ~]#
yum -y install bc*
yum -y install binutils*
yum -y install compat-libcap1*
yum -y install compat-libstdc++-33*
yum -y install elfutils-libelf*
yum -y install elfutils-libelf-devel*
yum -y install fontconfig-devel*
yum -y install glibc*
yum -y install glibc-devel*
yum -y install ksh*
yum -y install libaio*
yum -y install libaio-devel*
yum -y install libX11*
yum -y install libXau*
yum -y install libXi*
yum -y install libXtst*
yum -y install libXrender*
yum -y install libXrender-devel*
yum -y install libgcc*
yum -y install libstdc++*
yum -y install libstdc++-devel*
yum -y install libxcb*
yum -y install make*
yum -y install smartmontools*
yum -y install sysstat*
yum -y install gcc*

// 单独安装下compat-libstdc++-33
[root@hellodba ~]# /soft/rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm

14、配置Oracle软件所有者环境

[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ vi ~/.bash_profile
umask=022
export PS1
export TMP=/tmp
export LANG=en_US.UTF8
export TMPDIR=$TMP
export ORACLE_UNQNAME=hellodb
export ORACLE_SID=hellodb;
export ORACLE_BASE=/u01/app/oracle;
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1;
export ORACLE_TERM=xterm;
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS";
export NLS_LANG=AMERICAN_AMERICA.UTF8;
export PATH=.:$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin;
export THREADS_FLAG=native;

[oracle@hellodba ~]$ source ~/.bash_profile

15、重启操作系统

[root@hellodba ~]# reboot

三、关于响应文件

1、什么是静默安装

静默安装在控制台中运行,不使用GUI。您通常看到的交互式对话框不会在静默安装中显示。
Oracle Universal Installer不会提示您选择一系列安装选项,而是使用存储在响应文件中或在命令行中传递的预定义选项集来安装软件。您可以在控制台中查看静默安装的进度。

2、什么是响应文件

响应文件是一个规范文件,包含在交互式安装会话期间通常通过Oracle Universal Installer用户界面获取的信息。每个参数都存储在响应文件中标识的变量的值。

3、响应文件的工作原理

通过在启动 Oracle Universal Installer 时指定响应文件,可以完全或部分自动执行 Oracle 软件的安装和配置。Oracle Universal Installer 使用响应文件中包含的值来提供部分或全部 Oracle Universal Installer 提示的选项。

4、选择静默安装的原因

在未安装图形界面的操作系统上安装Oracle数据库。
在多台计算机上多次安装Oracle产品,则静默安装非常有用。如果在每台计算机上安装时选择的选项始终相同,则可以节省查看每个安装屏幕和选择各种安装选项的时间。

四、安装Oracle数据库软件

1、上传Oracle数据库安装软件到服务器并解压

//通过oracle用户上传Oracle数据库安装软件到服务器 /soft 目录并解压至$ORACLE_HOME
[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ cd $ORACLE_HOME
[oracle@hellodba dbhome_1]$ unzip /soft/LINUX.X64_193000_db_home.zip

2、准备响应文件

// db_install.rsp: 数据库软件安装响应文件
[oracle@hellodba ~]$ ls -l $ORACLE_HOME/install/response
-rw-r--r-- 1 oracle oinstall 19932 Feb 6 2019 db_install.rsp

// netca.rsp: 创建监听响应文件
[oracle@hellodba ~]$ ls -l $ORACLE_HOME/assistants/netca
drwxr-xr-x 2 oracle oinstall 252 Apr 17 2019 doc
drwxr-xr-x 2 oracle oinstall 206 Apr 17 2019 images
drwxr-xr-x 2 oracle oinstall 23 Apr 17 2019 jlib
-rwxr-x--- 1 oracle oinstall 88 Apr 21 2007 netca_deinst.sbs
-rw-r----- 1 oracle oinstall 6207 Apr 6 2019 netca.rsp
-rwxr-x--- 1 oracle oinstall 6601 Sep 1 2017 netca.sbs

// dbca.rsp: 创建数据库响应文件
[oracle@hellodba ~]$ ls -l $ORACLE_HOME/assistants/dbca
-rw-r----- 1 oracle oinstall 25502 Apr 6 2019 dbca.rsp
drwxr-xr-x 2 oracle oinstall 242 Apr 17 2019 doc
drwxr-xr-x 2 oracle oinstall 41 Apr 17 2019 jlib
drwxr-xr-x 2 oracle oinstall 171 Apr 17 2019 templates

3、编辑db_install.rsp响应文件

将db_install.rsp文件从响应文件目录复制到/soft目录

[oracle@hellodba ~]$ cp $ORACLE_HOME/install/response/db_install.rsp /soft
[oracle@hellodba ~]$ cd /soft
[oracle@hellodba soft]$ echo '' > db_install.rsp
[oracle@hellodba soft]$ vi db_install.rsp
#软件版本信息
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
#安装选项-仅安装数据库软件
oracle.install.option=INSTALL_DB_SWONLY
#oracle用户用于安装软件的组名
UNIX_GROUP_NAME=oinstall
#oracle产品清单目录
INVENTORY_LOCATION=/u01/app/oraInventory
#oracle安装目录
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
#oracle基础目录
ORACLE_BASE=/u01/app/oracle
#安装版本类型:企业版
oracle.install.db.InstallEdition=EE
#指定组信息
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dgdba

4、安装数据库软件

[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ cd $ORACLE_HOME
[oracle@hellodba dbhome_1]$ ./runInstaller -silent -noconfig -responseFile /soft/db_install.rsp
Launching Oracle Database Setup Wizard...

The response file for this session can be found at:
/u01/app/oracle/product/19.0.0/dbhome_1/install/response/db_2023-12-22_09-42-03AM.rsp

You can find the log of this install session at:
/tmp/InstallActions2023-12-22_09-42-03AM/installActions2023-12-22_09-42-03AM.log

As a root user, execute the following script(s):
1. /u01/app/oraInventory/orainstRoot.sh
2. /u01/app/oracle/product/19.0.0/dbhome_1/root.sh

Execute /u01/app/oraInventory/orainstRoot.sh on the following nodes:
[hellodba]
Execute /u01/app/oracle/product/19.0.0/dbhome_1/root.sh on the following nodes:
[hellodba]

Successfully Setup Software.
Moved the install session logs to:
/u01/app/oraInventory/logs/InstallActions2023-12-22_09-42-03AM

5、执行配置脚本

[root@hellodba ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@hellodba ~]# /u01/app/oracle/product/19.0.0/dbhome_1/root.sh
Check /u01/app/oracle/product/19.0.0/dbhome_1/install/root_hellodba_2023-12-22_09-43-27-215962712.log for the output of root script

五、配置监听

1、编辑 netca.rsp响应文件

将netca.rsp文件从响应文件目录复制到/soft目录

[oracle@hellodba ~]$ cp $ORACLE_HOME/assistants/netca/netca.rsp /soft
[oracle@hellodba ~]$ cd /soft
[oracle@hellodba soft]$ echo '' > netca.rsp
[oracle@hellodba soft]$ vi netca.rsp
[GENERAL]
RESPONSEFILE_VERSION="19.0"
CREATE_TYPE="CUSTOM"
[oracle.net.ca]
INSTALLED_COMPONENTS={"server","net8","javavm"}
INSTALL_TYPE=""typical""
LISTENER_NUMBER=1
LISTENER_NAMES={"LISTENER"}
LISTENER_PROTOCOLS={"TCP;1521"}
LISTENER_START=""LISTENER""
NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
NSN_NUMBER=1
NSN_NAMES={"EXTPROC_CONNECTION_DATA"}
NSN_SERVICE={"PLSExtProc"}
NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}

2、使用响应文件创建监听

[oracle@hellodba ~]$ netca -silent -responseFile /soft/netca.rsp

Parsing command line arguments:
Parameter "silent" = true
Parameter "responsefile" = /soft/netca.rsp
Done parsing command line arguments.
Oracle Net Services Configuration:
Profile configuration complete.
Oracle Net Listener Startup:
Running Listener Control:
/u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl start LISTENER
Listener Control complete.
Listener started successfully.
Listener configuration complete.
Oracle Net Services configuration successful. The exit code is 0

3、监听管理

3.1、查看监听状态

[oracle@hellodba ~]$ lsnrctl status

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 21-DEC-2023 21:02:07

Copyright (c) 1991, 2019, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hellodba)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 21-DEC-2023 21:01:26
Uptime 0 days 0 hr. 0 min. 40 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/hellodba/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hellodba)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully

3.2、关闭监听

[oracle@hellodba ~]$ lsnrctl stop

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 21-DEC-2023 21:02:31

Copyright (c) 1991, 2019, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hellodba)(PORT=1521)))
The command completed successfully

3.3、启动监听

[oracle@hellodba ~]$ lsnrctl start

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 21-DEC-2023 21:02:49

Copyright (c) 1991, 2019, Oracle. All rights reserved.

Starting /u01/app/oracle/product/19.0.0/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 19.0.0.0.0 - Production
System parameter file is /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/hellodba/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hellodba)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hellodba)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 21-DEC-2023 21:02:49
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/hellodba/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hellodba)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully

六、创建数据库

1、编辑dbca.rsp响应文件

将dbca.rsp文件从响应文件目录复制到/soft目录

[oracle@hellodba ~]$ cp $ORACLE_HOME/assistants/dbca/dbca.rsp /soft
[oracle@hellodba ~]$ cd /soft
[oracle@hellodba soft]$ echo '' > dbca.rsp
[oracle@hellodba soft]$ vi dbca.rsp
#响应文件版本号
responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
#数据库模板名称
templateName=General_Purpose.dbc
#数据库全局名
gdbName=hellodb
#SID
sid=hellodb
#数据库配置-单实例安装
databaseConfigType=SI
#设置SYS账户密码
sysPassword=Hell0o@Dba
#设置SYSTEM账户密码
systemPassword=Hell0o@Dba
#数据库字符集
characterSet=AL32UTF8
#国家字符集
nationalCharacterSet=UTF8
#注册监听
listeners=LISTENER
#Oracle所占物理内存百分比
memoryPercentage=40
#指定数据库类型
databaseType=MULTIPURPOSE
#关闭自动内存管理
automaticMemoryManagement=false

2、使用响应文件创建数据库

[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ dbca -silent -createDatabase -responseFile /soft/dbca.rsp
Prepare for db operation
10% complete
Copying database files
40% complete
Creating and starting Oracle instance
42% complete
46% complete
50% complete
54% complete
60% complete
Completing Database Creation
66% complete
69% complete
70% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
/u01/app/oracle/cfgtoollogs/dbca/hellodb.
Database Information:
Global Database Name:hellodb
System Identifier(SID):hellodb
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/hellodb/hellodb.log" for further details.

七、数据库管理入门

1、启用SQL*Plus从命令行连接到数据库

[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ sqlplus / as sysdba

2、查看数据库基础信息

SQL> select name,log_mode,open_mode,platform_name,db_unique_name from v$database;
NAME LOG_MODE OPEN_MODE PLATFORM_NAME DB_UNIQUE_NAME
---------------------------------------------------------------------------------------
HELLODB NOARCHIVELOG READ WRITE Linux x86 64-bit hellodb

3、查看数据库版本

SQL> select banner from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

4、查看数据库字符集

SQL> select * from nls_database_parameters where parameter like '%CHARACTERSET%';
PARAMETER VALUE
---------------------------------------------------------------------------------
NLS_NCHAR_CHARACTERSET UTF8
NLS_CHARACTERSET AL32UTF8

5、查看数据库块大小

SQL> show parameter db_block_size
NAME TYPE VALUE
-------------------------------------------
db_block_size integer 8192

6、实例的启动与关闭

6.1、启动

[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ lsnrctl start
[oracle@hellodba ~]$ sqlplus / as sysdba
SQL> startup

6.2、关闭

[root@hellodba ~]# su - oracle
[oracle@hellodba ~]$ lsnrctl stop
[oracle@hellodba ~]$ sqlplus / as sysdba
SQL> shutdown immediate;

7、取消180天密码过期限制

SQL> select profile,resource_name,resource_type,limit from dba_profiles where profile='DEFAULT' and RESOURCE_NAME='PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
------------------------------------ ----------- ------------------------------
DEFAULT PASSWORD_LIFE_TIME PASSWORD 180

SQL> alter profile default limit password_life_time unlimited;

SQL> select profile,resource_name,resource_type,limit from dba_profiles where profile='DEFAULT' and RESOURCE_NAME='PASSWORD_LIFE_TIME';
PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT
------------------------------------ ----------- ------------------------------
DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED

8、关闭审计

SQL> show parameter audit_trail;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_trail string DB

SQL> alter system set audit_trail=none scope=spfile; (重启数据库生效)

9、调整db_files

SQL> show parameter db_files;
NAME TYPE VALUE
---------------------------------------------------------------------------
db_files integer 200

SQL> alter system set db_files=1024 scope=spfile; (重启数据库生效)

八、总结

  到此通过响应文件静默安装Oracle数据库就完成了,并进行了一些常规的设置。与图形化交互方式安装Oracle数据库相比,使用响应文件安装Oracle数据库更方便、更便捷,更适合批量安装相同配置参数的Oracle数据库。静默安装可以省去手动输入大量信息的繁琐过程,提高了安装效率,同时也减少了出错的可能性。在实际部署中,我们可以根据自己的需要进行调整和优化,如更改安装路径、添加组件等。希望本文能够帮助大家顺利完成使用响应文件静默安装Oracle 19C数据库,提高工作效率。

九、写在后面

  由于本人有限的能力和知识储备,可能存在错误或疏漏之处,如有错误敬请批评指正!

 
公众号:Hello DBA
 

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论