好消息:Oracle 23ai 现已支持一键部署!_oracle-database-ee-23ai
目录
前言
最近拿到了 23ai 的本地版安装包,之前也写了一篇手动安装 Oracle 23ai RAC 的文章:装个 Oracle 23ai RAC 玩玩~,当时文章里说会尽快适配好 23ai 的一键安装,正好晚上有空适配了一下,花了半小时左右调整了一下静默安装的模版,已经搞定了!
本文先演示一下用一键安装脚本安装 Oracle 23ai 的过程,过两天再发一篇 23ai RAC 的一键安装。
安装前准备
安装使用方式和之前一样,安装命令通用,不分操作系统版本,同一套命令安装所有 Oracle 场景。
环境配置
操作系统版本:
[root@orcl:/root]# cat /etc/os-release NAME=\"Oracle Linux Server\"VERSION=\"8.10\"ID=\"ol\"ID_LIKE=\"fedora\"VARIANT=\"Server\"VARIANT_ID=\"server\"VERSION_ID=\"8.10\"PLATFORM_ID=\"platform:el8\"PRETTY_NAME=\"Oracle Linux Server 8.10\"ANSI_COLOR=\"0;31\"CPE_NAME=\"cpe:/o:oracle:linux:8:10:server\"HOME_URL=\"https://linux.oracle.com/\"BUG_REPORT_URL=\"https://github.com/oracle/oracle-linux\"ORACLE_BUGZILLA_PRODUCT=\"Oracle Linux 8\"ORACLE_BUGZILLA_PRODUCT_VERSION=8.10ORACLE_SUPPORT_PRODUCT=\"Oracle Linux\"ORACLE_SUPPORT_PRODUCT_VERSION=8.10
网络信息
查看网络配置情况:
[root@orcl:/root]# ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:0c:29:8f:22:48 brd ff:ff:ff:ff:ff:ff altname enp11s0 inet 192.168.31.102/24 brd 192.168.31.255 scope global noprefixroute ens192 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe8f:2248/64 scope link noprefixroute valid_lft forever preferred_lft forever
获取网卡名称 ens192
。
系统镜像挂载
手动挂载操作系统镜像,脚本会自动配置本地 YUM 源:
[root@orcl:/root]# mount /dev/cdrom /mnt/mount: /mnt: WARNING: device write-protected, mounted read-only.[root@orcl:/root]# df -h | grep /mnt/dev/sr0 14G 14G 0 100% /mnt
要用 everything 版本的镜像,否则可能会缺包。
安装包上传
提前上传安装介质和安装脚本:
[root@orcl:/soft]# lsLINUX.X64_235000_db_home.zip OracleShellInstall
获取安装命令
使用我配套开发的 Oracle 一键安装命令生成工具 可视化填写参数,获取一键安装命令:
一键安装
切换到安装包和脚本所在目录,执行一键安装即可:
[root@orcl23ai soft]# ./OracleShellInstall \\-lf ens192 `# 公网IP的网卡名称`\\-pdb pdb01 `# PDB名称`\\-opd Y `# 优化数据库` ███████ ██ ████████ ██ ██ ██ ██ ██ ██ ██ ██░░░░░██ ░██ ██░░░░░░ ░██ ░██ ░██░██ ░██ ░██ ░██ ██ ░░██ ██████ ██████ █████ ░██ █████ ░██ ░██ █████ ░██ ░██░██ ███████ ██████ ██████ ██████ ░██ ░██░██ ░██░░██░░█ ░░░░░░██ ██░░░██ ░██ ██░░░██░█████████░██████ ██░░░██ ░██ ░██░██░░██░░░██ ██░░░░ ░░░██░ ░░░░░░██ ░██ ░██░██ ░██ ░██ ░ ███████ ░██ ░░ ░██░███████░░░░░░░░██░██░░░██░███████ ░██ ░██░██ ░██ ░██░░█████ ░██ ███████ ░██ ░██░░██ ██ ░██ ██░░░░██ ░██ ██ ░██░██░░░░ ░██░██ ░██░██░░░░ ░██ ░██░██ ░██ ░██ ░░░░░██ ░██ ██░░░░██ ░██ ░██ ░░███████ ░███ ░░████████░░█████ ███░░██████ ████████ ░██ ░██░░██████ ███ ███░██ ███ ░██ ██████ ░░██ ░░████████ ███ ███ ░░░░░░░ ░░░ ░░░░░░░░ ░░░░░ ░░░ ░░░░░░ ░░░░░░░░ ░░ ░░ ░░░░░░ ░░░ ░░░ ░░ ░░░ ░░ ░░░░░░ ░░ ░░░░░░░░ ░░░ ░░░ 注意:本脚本仅用于新服务器上实施部署数据库使用,严禁在已运行数据库的主机上执行,以免发生数据丢失或者损坏,造成不可挽回的损失!!! 请选择安装模式 [单机(si)/单机ASM(sa)/集群(rac)] : si数据库安装模式: single 请选择数据库版本 [11|12|19|21|23] : 23数据库版本: 23 OracleShellInstall 开始安装,详细安装过程可查看日志: tail -2000f /soft/print_shell_install_20250825214052.log 正在进行安装前检查,请稍等...... 正在检测安装包 /soft/LINUX.X64_235000_db_home.zip 的 MD5 值是否正确,请稍等...... 正在配置本地软件源......已完成 (耗时: 1 秒)正在获取操作系统信息......已完成 (耗时: 1 秒)正在安装依赖包......已完成 (耗时: 113 秒)正在禁用防火墙......已完成 (耗时: 2 秒)正在禁用 selinux......已完成 (耗时: 1 秒)正在配置 nsyctl......已完成 (耗时: 1 秒)正在配置主机名和 hosts 文件......已完成 (耗时: 1 秒)正在创建用户和组......已完成 (耗时: 2 秒)正在创建安装目录......已完成 (耗时: 1 秒)正在配置 Avahi-daemon 服务......已完成 (耗时: 1 秒)正在配置透明大页 && NUMA && 磁盘 IO 调度器......已完成 (耗时: 4 秒)正在配置操作系统参数 sysctl......已完成 (耗时: 1 秒)正在配置 RemoveIPC......已完成 (耗时: 1 秒)正在配置用户限制 limit......已完成 (耗时: 1 秒)正在配置 shm 目录......已完成 (耗时: 1 秒)正在安装 rlwrap 插件......已完成 (耗时: 16 秒)正在配置用户环境变量......已完成 (耗时: 1 秒)正在解压 Oracle 安装包以及补丁......已完成 (耗时: 51 秒)正在安装 Oracle 软件以及补丁......已完成 (耗时: 170 秒)正在创建监听......已完成 (耗时: 5 秒)正在创建数据库......已完成 (耗时: 473 秒)正在优化数据库......已完成 (耗时: 121 秒)恭喜!Oracle 一键安装执行完成 (耗时: 973 秒),现在是否重启主机:[Y/N] Y正在重启当前节点主机......
因为我虚拟化环境的磁盘是机械盘,所以安装不是很快,如果是 SSD,估计 10 分钟不到就装完了。
安装后检查
重启主机后,数据库自动启动:
[root@orcl:/soft]# so## 数据库开机自启[oracle@orcl:/home/oracle]$ ps -ef|grep pmonoracle 1861 1 0 22:36 ? 00:00:00 ora_pmon_orcloracle 3353 3313 0 22:58 pts/0 00:00:00 grep --color=auto pmon## 自动配置归档删除和备份定时任务[oracle@orcl:/home/oracle]$ crontab -l# OracleBegin00 02 * * * /home/oracle/scripts/del_arch_orcl.sh#00 00 * * 0 /home/oracle/scripts/dbbackup_lv0_orcl.sh#00 00 * * 1,2,3,4,5,6 /home/oracle/scripts/dbbackup_lv1_orcl.sh## 自动配置 SQLNET 优化[oracle@orcl:/home/oracle]$ cat $TNS_ADMIN/sqlnet.ora# sqlnet.ora Network Configuration File: /u01/app/oracle/product/23.5.0/db/network/admin/sqlnet.ora# Generated by Oracle configuration tools.NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)# OracleBeginSQLNET.ALLOWED_LOGON_VERSION_CLIENT=8SQLNET.ALLOWED_LOGON_VERSION_SERVER=8## 各种快捷别名,运维便捷alias sas=\'sqlplus / as sysdba\'alias awr=\'sqlplus / as sysdba @?/rdbms/admin/awrrpt\'alias ash=\'sqlplus / as sysdba @?/rdbms/admin/ashrpt\'alias alert=\'vi $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace/alert_$ORACLE_SID.log\'export PS1=\"[`whoami`@`hostname`:\"\'$PWD]$ \'alias bdf=\'df -Th\'alias acd=\'cd $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace\'alias dblog=\'tail -200f $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace/alert_$ORACLE_SID.log\'## 支持别名快速连接数据库[oracle@orcl:/home/oracle]$ sasSQL*Plus: Release 23.0.0.0.0 - Production on Mon Aug 25 22:58:35 2025Version 23.8.0.25.04Copyright (c) 1982, 2025, Oracle. All rights reserved.Connected to:Oracle Database 23ai Enterprise Edition Release 23.0.0.0.0 - Limited AvailabilityVersion 23.8.0.25.04## 默认创建一个 PDB01,可根据参数自定义 PDB 名称(支持安装过程中同时创建多个 PDB)SYS@orcl SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDB01 READ WRITE NO## 默认开启归档模式,可根据参数自定义是否开启归档SYS@orcl SQL> archive log listDatabase log mode Archive ModeAutomatic archival EnabledArchive destination /oradata/archivelogOldest online log sequence 2Next log sequence to archive 2Current log sequence 1## 默认创建 8 组 1G 的在线重做日志,可根据参数定义日志文件大小(默认 1G)SYS@orcl SQL> select group#,thread#,bytes/1024/1024,status from v$log; GROUP# THREAD# BYTES/1024/1024 STATUS---------- ---------- --------------- ---------------- 1 1 1024 INACTIVE 2 1 1024 CURRENT 3 1 1024 UNUSED 4 1 1024 UNUSED 5 1 1024 UNUSED 6 1 1024 UNUSED 7 1 1024 UNUSED 8 1 1024 UNUSED8 rows selected.
以上都是一键安装脚本自动完成,没有任何人为配置,更多优化内容不一一展示,最后附上完整的一键安装详细日志:
Mon Aug 25 21:40:55 CST 2025#==============================================================# 配置本地软件源 #==============================================================# [BaseOS]name=BaseOSbaseurl=file:///mnt/BaseOSenabled=1gpgcheck=0[AppStream]name=AppStreambaseurl=file:///mnt/AppStreamenabled=1gpgcheck=0#==============================================================# 打印系统信息 #==============================================================# 服务器时间: Mon Aug 25 21:41:00 CST 2025操作系统版本: NAME=\"Oracle Linux Server\"VERSION=\"8.10\"ID=\"ol\"ID_LIKE=\"fedora\"VARIANT=\"Server\"VARIANT_ID=\"server\"VERSION_ID=\"8.10\"PLATFORM_ID=\"platform:el8\"PRETTY_NAME=\"Oracle Linux Server 8.10\"ANSI_COLOR=\"0;31\"CPE_NAME=\"cpe:/o:oracle:linux:8:10:server\"HOME_URL=\"https://linux.oracle.com/\"BUG_REPORT_URL=\"https://github.com/oracle/oracle-linux\"ORACLE_BUGZILLA_PRODUCT=\"Oracle Linux 8\"ORACLE_BUGZILLA_PRODUCT_VERSION=8.10ORACLE_SUPPORT_PRODUCT=\"Oracle Linux\"ORACLE_SUPPORT_PRODUCT_VERSION=8.10内核信息: Linux version 5.15.0-206.153.7.1.el8uek.x86_64 (mockbuild@host-100-100-224-14) (gcc (GCC) 11.4.1 20230605 (Red Hat 11.4.1-2.1.0.1), GNU ld version 2.36.1-4.0.2.el8_6) #2 SMP Wed May 22 20:49:34 PDT 2024Glibc 版本: 2.28CPU 信息: 型号名称 :Intel(R) Xeon(R) CPU E5-2673 v4 @ 2.30GHz 物理 CPU 个数 :4 每个物理 CPU 的逻辑核数 :2 系统的 CPU 线程数 :8 系统的 CPU 类型 :x86_64 内存信息: total used free shared buff/cache availableMem: 7932 637 4636 10 2658 7023Swap: 8191 0 8191挂载信息: /dev/mapper/ol-root / xfs defaults 0 0UUID=92390a0d-1af9-4e77-9403-6c705eec2494 /boot xfs defaults 0 0UUID=D974-8153 /boot/efi vfat umask=0077,shortname=winnt 0 2/dev/mapper/ol-swap none swap defaults 0 0目录信息: Filesystem Size Used Avail Use% Mounted ondevtmpfs 3.9G 0 3.9G 0% /devtmpfs 3.9G 0 3.9G 0% /dev/shmtmpfs 3.9G 9.3M 3.9G 1% /runtmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup/dev/mapper/ol-root 91G 8.2G 83G 9% //dev/sda2 1014M 322M 693M 32% /boot/dev/sda1 599M 6.0M 593M 1% /boot/efitmpfs 794M 12K 794M 1% /run/user/42tmpfs 794M 0 794M 0% /run/user/0/dev/sr0 14G 14G 0 100% /mnt#==============================================================# 安装依赖软件包 #==============================================================# psmisc \\tar \\glibc \\libaio \\libgcc \\libstdc++ \\bc \\make \\binutils \\glibc-devel \\ksh \\libstdc++-devel \\unzip \\gcc \\gcc-c++ \\libnsl \\initscripts \\libaio-devel \\e2fsprogs \\e2fsprogs-libs \\smartmontools \\net-tools \\nfs-utils \\elfutils-libelf \\elfutils-libelf-devel \\libibverbs \\librdmacm \\fontconfig \\fontconfig-devel \\libXrender \\libXrender-devel \\libX11 \\libXau \\libXi \\libXtst \\libxcb \\unixODBC \\sysstat \\readline \\readline-devel \\policycoreutils \\libvirt-libs \\policycoreutils-python-utils \\libnsl2 \\libasan \\liblsan \\compat-openssl10 \\libxcrypt-compat \\compat-openssl11 \\libgfortran \\rlwrap #==============================================================# 静默安装软件包 #==============================================================# 检查必需软件包安装情况: psmisc-23.1-5.el8.x86_64tar-1.30-9.el8.x86_64glibc-2.28-251.0.2.el8.x86_64libaio-0.3.112-1.el8.x86_64libgcc-8.5.0-21.0.1.el8.x86_64libstdc++-8.5.0-21.0.1.el8.x86_64bc-1.07.1-5.el8.x86_64make-4.2.1-11.el8.x86_64binutils-2.30-123.0.2.el8.x86_64glibc-devel-2.28-251.0.2.el8.x86_64ksh-20120801-267.0.1.el8.x86_64libstdc++-devel-8.5.0-21.0.1.el8.x86_64unzip-6.0-46.0.1.el8.x86_64gcc-8.5.0-21.0.1.el8.x86_64gcc-c++-8.5.0-21.0.1.el8.x86_64libnsl-2.28-251.0.2.el8.x86_64initscripts-10.00.18-1.0.1.el8.x86_64#==============================================================# 禁用防火墙 #==============================================================# ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) since Mon 2025-08-25 21:42:54 CST; 402ms ago Docs: man:firewalld(1) Main PID: 1209 (code=exited, status=0/SUCCESS)Aug 24 22:17:46 orcl23ai systemd[1]: Starting firewalld - dynamic firewall daemon...Aug 24 22:18:00 orcl23ai systemd[1]: Started firewalld - dynamic firewall daemon.Aug 24 22:18:01 orcl23ai firewalld[1209]: WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider disabling it now.Aug 25 21:42:54 orcl23ai systemd[1]: Stopping firewalld - dynamic firewall daemon...Aug 25 21:42:54 orcl23ai systemd[1]: firewalld.service: Succeeded.Aug 25 21:42:54 orcl23ai systemd[1]: Stopped firewalld - dynamic firewall daemon.#==============================================================# 禁用 SELinux#==============================================================# SELinux status: enabledSELinuxfs mount: /sys/fs/selinuxSELinux root directory: /etc/selinuxLoaded policy name: targetedCurrent mode: permissiveMode from config file: disabledPolicy MLS status: enabledPolicy deny_unknown status: allowedMemory protection checking: actual (secure)Max kernel policy version: 33#==============================================================# 配置 nsysctl.conf #==============================================================# NOZEROCONF=yes#==============================================================# 配置主机名 #==============================================================# Static hostname: orcl Icon name: computer-vm Chassis: vm Machine ID: 2361e9c20d1d4403aeb1be8b44a81b87 Boot ID: 4f1c9139827648d9bd79e9cf6a072ca3 Virtualization: vmware Operating System: Oracle Linux Server 8.10 CPE OS Name: cpe:/o:oracle:linux:8:10:server Kernel: Linux 5.15.0-206.153.7.1.el8uek.x86_64 Architecture: x86-64#==============================================================# 配置 /etc/hosts 文件 #==============================================================# 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.31.102 orcl#==============================================================# 创建用户和组 #==============================================================# oracle 用户: uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba),54323(oper),54324(backupdba),54325(dgdba),54326(kmdba),54330(racdba)#==============================================================# 配置 Avahi-daemon 服务 #==============================================================# ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; disabled; vendor preset: enabled) Active: inactive (dead)Aug 24 22:18:16 orcl23ai avahi-daemon[1107]: New relevant interface virbr0.IPv4 for mDNS.Aug 24 22:18:16 orcl23ai avahi-daemon[1107]: Registering new address record for 192.168.122.1 on virbr0.IPv4.Aug 25 21:43:02 orcl systemd[1]: Stopping Avahi mDNS/DNS-SD Stack...Aug 25 21:43:02 orcl avahi-daemon[1107]: Got SIGTERM, quitting.Aug 25 21:43:02 orcl avahi-daemon[1107]: Leaving mDNS multicast group on interface virbr0.IPv4 with address 192.168.122.1.Aug 25 21:43:02 orcl avahi-daemon[1107]: Leaving mDNS multicast group on interface ens192.IPv6 with address fe80::20c:29ff:fe8f:2248.Aug 25 21:43:02 orcl avahi-daemon[1107]: Leaving mDNS multicast group on interface ens192.IPv4 with address 192.168.31.102.Aug 25 21:43:02 orcl avahi-daemon[1107]: avahi-daemon 0.7 exiting.Aug 25 21:43:02 orcl systemd[1]: avahi-daemon.service: Succeeded.Aug 25 21:43:02 orcl systemd[1]: Stopped Avahi mDNS/DNS-SD Stack.#==============================================================# 配置透明大页 && NUMA && 磁盘 IO 调度器 #==============================================================# args=\"ro resume=/dev/mapper/ol-swap rd.lvm.lv=ol/root rd.lvm.lv=ol/swap rhgb quiet numa=off transparent_hugepage=never elevator=deadline $tuned_params\"-resume=/dev/mapper/ol-swap-args=\"roargs=\"ro resume=/dev/mapper/ol-swap rd.lvm.lv=ol/root rd.lvm.lv=ol/swap rhgb quiet numa=off transparent_hugepage=never elevator=deadline $tuned_params\"-elevator=deadline-transparent_hugepage=neverargs=\"ro resume=/dev/mapper/ol-swap rd.lvm.lv=ol/root rd.lvm.lv=ol/swap rhgb quiet numa=off transparent_hugepage=never elevator=deadline $tuned_params\"--#==============================================================# 配置 sysctl.conf #==============================================================# 查看 sysctl.conf 配置情况 :sysctl -p fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = 2097152kernel.shmmax = 8317681654kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576vm.min_free_kbytes = 32490net.ipv4.conf.ens192.rp_filter = 1vm.swappiness = 10kernel.panic_on_oops = 1kernel.randomize_va_space = 2vm.hugetlb_shm_group = 54321kernel.numa_balancing = 0#==============================================================# 配置 RemoveIPC #==============================================================# 查看 RemoveIPC :/etc/systemd/logind.conf RemoveIPC=noRemoveIPC=no#==============================================================# 配置 /etc/security/limits.conf 和 /etc/pam.d/login #==============================================================# 查看 /etc/security/limits.conf: oracle soft nofile 1024oracle hard nofile 65536oracle soft stack 10240oracle hard stack 32768oracle soft nproc 16384oracle hard nproc 16384oracle hard memlock unlimitedoracle soft memlock unlimited查看 /etc/pam.d/login 文件: auth substack system-authauth include postloginaccount required pam_nologin.soaccount include system-authpassword include system-authsession required pam_selinux.so closesession required pam_loginuid.sosession optional pam_console.sosession required pam_selinux.so opensession required pam_namespace.sosession optional pam_keyinit.so force revokesession include system-authsession include postlogin-session optional pam_ck_connector.sosession required pam_limits.so#==============================================================# 配置 /dev/shm #==============================================================# 查看 Linux 挂载情况:/etc/fstab /dev/mapper/ol-root / xfs defaults 0 0UUID=92390a0d-1af9-4e77-9403-6c705eec2494 /boot xfs defaults 0 0UUID=D974-8153 /boot/efi vfat umask=0077,shortname=winnt 0 2/dev/mapper/ol-swap none swap defaults 0 0tmpfs /dev/shm tmpfs size=8122736k 0 0#==============================================================# 安装 rlwrap 插件 #==============================================================# 成功安装 rlwrap: rlwrap 0.44 #==============================================================# Root 用户环境变量 #==============================================================# 查看 root 用户环境变量:/root/.bash_profile if [ -f ~/.bashrc ]; then . ~/.bashrcfiPATH=$PATH:$HOME/binexport PATHalias so=\'su - oracle\'export PS1=[`whoami`@`hostname`:\'$PWD]# \'alias bdf=\'df -Th\'alias syslog=\'vi /var/log/messages\'#==============================================================# oracle 用户环境变量,实例名:orcl #==============================================================# 查看 oracle 用户环境变量:/home/oracle/.bash_profile if [ -f ~/.bashrc ]; then . ~/.bashrcfiumask 022export TMP=/tmpexport TMPDIR=$TMPexport NLS_LANG=AMERICAN_AMERICA.AL32UTF8export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=/u01/app/oracle/product/23.5.0/dbexport ORACLE_TERM=xtermexport TNS_ADMIN=$ORACLE_HOME/network/adminexport ORACLE_SID=orclexport PATH=/usr/sbin:$PATHexport PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$PATHexport PERL5LIB=$ORACLE_HOME/perl/libalias sas=\'sqlplus / as sysdba\'alias awr=\'sqlplus / as sysdba @?/rdbms/admin/awrrpt\'alias ash=\'sqlplus / as sysdba @?/rdbms/admin/ashrpt\'alias alert=\'vi $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace/alert_$ORACLE_SID.log\'export PS1=\"[`whoami`@`hostname`:\"\'$PWD]$ \'alias bdf=\'df -Th\'alias acd=\'cd $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace\'alias dblog=\'tail -200f $ORACLE_BASE/diag/rdbms/*/$ORACLE_SID/trace/alert_$ORACLE_SID.log\'export CV_ASSUME_DISTID=OL8alias sqlplus=\'rlwrap sqlplus\'alias rman=\'rlwrap rman\'alias adrci=\'rlwrap adrci\'#==============================================================# 静默解压 Oracle 软件包 #==============================================================# 正在静默解压缩 Oracle 软件包,请稍等: 静默解压 Oracle 软件安装包: /soft/LINUX.X64_235000_db_home.zip #==============================================================# Oracle 安装静默文件 #==============================================================# oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v23.0.0installOption=INSTALL_DB_SWONLYUNIX_GROUP_NAME=oinstallINVENTORY_LOCATION=/u01/app/oraInventoryORACLE_BASE=/u01/app/oracleORACLE_HOME=/u01/app/oracle/product/23.5.0/dbinstallEdition=EEOSDBA=dbaOSOPER=operOSBACKUPDBA=backupdbaOSDGDBA=dgdbaOSKMDBA=kmdbaOSRACDBA=racdba#==============================================================# 静默安装 Oracle 软件命令 #==============================================================# /u01/app/oracle/product/23.5.0/db/runInstaller \\-silent \\-ignorePrereqFailure \\-responseFile /soft/oracle.rsp \\-waitForCompletion #==============================================================# 静默安装数据库软件 #==============================================================# 检查 Oracle 软件 OPacth 版本: OPatch Version: 12.2.0.1.46OPatch succeeded.正在安装 Oracle 软件: Launching Oracle Database Setup Wizard...The response file for this session can be found at: /u01/app/oracle/product/23.5.0/db/install/response/db_2025-08-25_09-44-21PM.rspYou can find the log of this install session at: /tmp/InstallActions2025-08-25_09-44-21PM/installActions2025-08-25_09-44-21PM.logAs a root user, run the following script(s): 1. /u01/app/oraInventory/orainstRoot.sh 2. /u01/app/oracle/product/23.5.0/db/root.shRun /u01/app/oraInventory/orainstRoot.sh on the following nodes: [orcl]Run /u01/app/oracle/product/23.5.0/db/root.sh on the following nodes: [orcl]Successfully Setup Software.Moved the install session logs to: /u01/app/oraInventory/logs/InstallActions2025-08-25_09-44-21PM#==============================================================# 执行 root 脚本 #==============================================================# 执行命令:/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.执行命令:/u01/app/oracle/product/23.5.0/db/root.sh Check /u01/app/oracle/product/23.5.0/db/install/root_orcl_2025-08-25_21-47-03-468441092.log for the output of root script#==============================================================# Oracle 软件版本 #==============================================================# SQL*Plus: Release 23.0.0.0.0 - ProductionVersion 23.8.0.25.04#==============================================================# Oracle 补丁信息 #==============================================================# 37701424;OCW RELEASE UPDATE 23.8.0.25.04 (37701424) Gold Image37701421;Database Release Update : 23.8.0.25.04 (37701421) Gold ImageOPatch succeeded.#==============================================================# 静默安装 Oracle 软件命令 #==============================================================# /u01/app/oracle/product/23.5.0/db/bin/netca -silent \\-responsefile /u01/app/oracle/product/23.5.0/db/assistants/netca/netca.rsp #==============================================================# 创建监听 #==============================================================# 正在创建监听: Parsing command line arguments: Parameter \"silent\" = true Parameter \"responsefile\" = /u01/app/oracle/product/23.5.0/db/assistants/netca/netca.rspDone parsing command line arguments.Oracle Net Services Configuration:Profile configuration complete.Oracle Net Listener Startup: Running Listener Control: /u01/app/oracle/product/23.5.0/db/bin/lsnrctl start LISTENER Listener Control complete. Listener started successfully.Listener configuration complete.Oracle Net Services configuration successful. The exit code is 0#==============================================================# 检查监听状态 #==============================================================# LSNRCTL for Linux: Version 23.0.0.0.0 - Production on 25-AUG-2025 21:47:13Copyright (c) 1991, 2025, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl)(PORT=1521)))STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 23.0.0.0.0 - ProductionStart Date 25-AUG-2025 21:47:13Uptime 0 days 0 hr. 0 min. 1 secTrace Level offSecurity ON: Local OS AuthenticationSNMPOFFListener Parameter File /u01/app/oracle/product/23.5.0/db/network/admin/listener.oraListener Log File /u01/app/oracle/diag/tnslsnr/orcl/listener/alert/log.xmlListening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=orcl)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))The listener supports no servicesThe command completed successfully#==============================================================# DBCA 静默建库文件:orcl #==============================================================# gdbName=orclsid=orcltemplateName=General_Purpose.dbcsysPassword=oraclesystemPassword=oraclecharacterSet=AL32UTF8nationalCharacterSet=AL16UTF16automaticMemoryManagement=falsetotalMemory=6345initParams=db_block_size=8192BYTEScreateAsContainerDatabase=truedatabaseConfigType=SIstorageType=FSdatafileDestination=/oradatarecoveryAreaDestination=/oradataresponseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v23.0.0#==============================================================# 静默创建数据库命令 #==============================================================# /u01/app/oracle/product/23.5.0/db/bin/dbca -silent -createDatabase \\-responseFile /soft/db.rsp \\-ignorePreReqs \\-ignorePrereqFailure \\-J-Doracle.assistants.dbca.validate.ConfigurationParams=false \\-initParams _exadata_feature_on=true #==============================================================# 创建数据库实例:orcl #==============================================================# 正在创建数据库:orcl [WARNING] [DBT-06208] The \'SYS\' password entered does not conform to the Oracle recommended standards. CAUSE: a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9].b.The password entered is a keyword that Oracle does not recommend to be used as password ACTION: Specify a strong password. If required refer Oracle documentation for guidelines.[WARNING] [DBT-06208] The \'SYSTEM\' password entered does not conform to the Oracle recommended standards. CAUSE: a. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9].b.The password entered is a keyword that Oracle does not recommend to be used as password ACTION: Specify a strong password. If required refer Oracle documentation for guidelines.Prepare for db operation10% completeCopying database files40% completeCreating and starting Oracle instance42% complete46% complete50% complete54% complete60% completeCompleting Database Creation66% complete69% complete70% completeExecuting Post Configuration Actions100% completeDatabase creation complete. For details check the logfiles at: /u01/app/oracle/cfgtoollogs/dbca/orcl.Database Information:Global Database Name:orclSystem Identifier(SID):orclLook at the log file \"/u01/app/oracle/cfgtoollogs/dbca/orcl/orcl.log\" for further details.#==============================================================# 创建 PDB 数据库 #==============================================================# 正在创建 PDB:pdb01 CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDB01 READ WRITE NO#==============================================================# 配置 Oracle 数据库控制文件复用 #==============================================================# 数据库控制文件: NAME----------------------------------------------------------------------------------------------------/oradata/ORCL/control01.ctl/oradata/ORCL/control02.ctl#==============================================================# 配置在线重做日志 #==============================================================# THREAD# GROUP# MEMBER size(M)---------- ---------- -------------------------------------------------------------------------------- ---------- 1 1 /oradata/ORCL/redo01.log 1024 1 2 /oradata/ORCL/redo02.log 1024 1 3 /oradata/ORCL/redo03.log 1024 1 4 /oradata/ORCL/redo04.log 1024 1 5 /oradata/ORCL/redo05.log 1024 1 6 /oradata/ORCL/redo06.log 1024 1 7 /oradata/ORCL/redo07.log 1024 1 8 /oradata/ORCL/redo08.log 1024#==============================================================# 配置 Oracle 数据库开机自启 #==============================================================# 数据库开机自启配置: touch /var/lock/subsys/localsu oracle -lc \"/u01/app/oracle/product/23.5.0/db/bin/lsnrctl start\"su oracle -lc \"/u01/app/oracle/product/23.5.0/db/bin/dbstart\"#==============================================================# 配置 RMAN 备份任务 #==============================================================# # OracleBegin00 02 * * * /home/oracle/scripts/del_arch_orcl.sh#00 00 * * 0 /home/oracle/scripts/dbbackup_lv0_orcl.sh#00 00 * * 1,2,3,4,5,6 /home/oracle/scripts/dbbackup_lv1_orcl.sh#==============================================================# 优化数据库参数 #==============================================================# 数据库参数: NAME SID SPVALUE VALUE-------------------------------------------------- ---------- -------------------------------------------------------------------------------- --------------------------------------------------------------------------------_b_tree_bitmap_plans * FALSE FALSE_datafile_write_errors_crash_instance * FALSE FALSE_exadata_feature_on * true TRUEaudit_trail * NONE NONEcompatible * 23.6.0 23.6.0control_file_record_keep_time* 31 31db_block_size * 8192 8192db_create_file_dest * /oradata /oradatadb_file_multiblock_read_count* 128db_files * 5000 200db_name* orcl orcldb_writer_processes * 1deferred_segment_creation * FALSE FALSEdiagnostic_dest * /u01/app/oracle/u01/app/oracledispatchers * (PROTOCOL=TCP) (SERVICE=orclXDB) (PROTOCOL=TCP) (SERVICE=orclXDB)enable_pluggable_database * true TRUEevent * 10949 trace name context forever,level 1event * 28401 trace name context forever,level 1fast_start_parallel_rollback * LOWlog_archive_dest_1 * location=/oradata/archivelog location=/oradata/archiveloglog_archive_format * %t_%s_%r.dbf %t_%s_%r.dbfmax_dump_file_size * 1Gmax_string_size * STANDARDnls_language * AMERICAN AMERICANnls_territory * AMERICA AMERICAopen_cursors * 1000 300optimizer_adaptive_plans * TRUEoptimizer_adaptive_statistics* FALSEoptimizer_index_caching * 0optimizer_mode * ALL_ROWSparallel_force_local * FALSEparallel_max_servers * 64 64pga_aggregate_target * 1330642944 1664090112processes * 2000 640remote_login_passwordfile * EXCLUSIVE EXCLUSIVEsession_cached_cursors * 300 50sessions * 984sga_max_size * 5322571776 4999610368sga_target * 5322571776 4999610368spfile * /u01/app/oracle/product/23.5.0/db/dbs/spfileorcl.orastatistics_level * TYPICALundo_retention * 10800 900#==============================================================# 配置 glogin.sql #==============================================================# define _editor=viset serveroutput on size 1000000set trimspool onset long 5000set linesize 100set pagesize 9999column plan_plus_exp format a80set sqlprompt \'&_user.@&_connect_identifier. SQL> \'
有心人可以根据我的安装日志就可以完成手动静默安装 Oracle 23ai 啦!
写在最后
其实 Oracle 23ai RAC 一键安装我已经测试完了,但是没时间整理文章,等我有时间整理好了就发出来!886~