2024 年 4 月 16 日,Oracle 2024 年第二季度 RU 补丁发布。每个季度 Oracle 发布补丁程序后都会更新 Doc ID 888.1 文档,Primary Note for Database Proactive Patch Program (Doc ID 888.1),从 2022 年 10 月的补丁周期开始,将不再为 19.17.0 及以上版本提供 19c RUR。在 2023 年 1 月交付 Oracle Database 19c RUR 19.16.2 之后,将不再在任何平台上交付其他 RUR。有关详细信息,请参阅 19c RUR 的日落和常见问题解答(Note 2898381.1)。为了让客户更频繁地访问推荐的、经过充分测试的补丁集,Oracle 很高兴从 2022 年 11 月起推出每月推荐补丁(MRP)。MRP 仅支持 Linux x86-64 平台。MRP 可能包括与安全相关的修复。此类安全相关修复将按季度记录在下表中。有关详细信息,请参阅介绍每月推荐补丁 (MRP) 和常见问题解答(Note 2898740.1)。
240416 补丁更新信息
21c 21.14 RU 发布
19c 19.23 RU 发布
18c 自 2021 年 7 月起发布的季度补丁包受密码保护,仅适用于获得季度更新例外批准的客户。普通用户只能下载到 18.14.0.0.210420 补丁。
Oracle 12.2.0.1 自 2022 年 4 月 1 日起进入持续模式,自 2022 年 4 月起发布的季度补丁包受密码保护,仅适用于获得季度更新例外批准的客户。
Oracle 12.1.0.2 自 2022 年 8 月 1 日起进入持续模式。2022 年 7 月之后发布的季度补丁包仅适用于获得季度更新批准的客户。
数据库 11.2.0.4 自 2021 年 1 月 1 日起进入市场驱动支持 (MDS) 模式。自 2021 年 1 月起发布的季度修补程序包是受限制的 MDS 计划修补程序,详见说明 2728619.1。有关最新数据库 11.2.0.4 补丁信息的列表,请参阅 Oracle 支持说明 2285559.1。
11g12c18c 均已经 EOL。
RU12 升级至 RU23
打补丁的文章已经写了很多了,Oracle 19c RAC RU15 补丁更新详细步骤,想着不会在写了,但是昨天还是没忍住,下载补丁后就打了起来,还记录了文档,也可参考Oracle 19c 19.10DBRU 补丁升级看这一篇就够了,那么索性就记录一下吧,因为后期需要对生产环境打补丁 RU23,打补丁也就花费不到一个小时,但写文档得花费两个小时以上。
1)Oracle 上传补丁包到 /u01/soft 并解压
我个人更喜欢下载 “COMBO OF OJVM RU COMPONENT” 类型的补丁,“COMBO OF OJVM RU COMPONENT 19.23.0.0.240416 + GI RU 19.23.0.0.240416”补丁 36209493 包含 OJVM 36199232 和 GI 补丁包 36233126,而 GI 补丁包中又包含了 DB 补丁包 36233263。
Oracle Database Patch 36209493 - Combo of OJVM Component Release Update 19.23.0.0.240116 + Grid Infrastrusture Apr 2024 Release Update 19.23.0.0.240116
Patch 36233126 - GI Release Update 19.23.0.0.240416
In this document, Oracle Database home refers to Oracle Database Enterprise Edition and Oracle Database Standard Edition.
The GI Release Update 19.23.0.0.240416 includes updates for both the Oracle Grid Infrastructure home and Oracle Database home that can be applied in a rolling fashion.
jiekexu-t1:/u01/soft(jiekexu)$ pwd
/u01/soft
jiekexu-t1:/u01/soft(jiekexu)$ ls -lrt *.zip
total 10413296
-rw-r--r-- 1 oracle oinstall 1319414278 Jan 6 2023 p31718723_112040_Linux-x86-64.zip
-rw-r--r-- 1 oracle oinstall 3558403835 Apr 17 17:37 p36209493_190000_Linux-x86-64.zip
-rw-r--r-- 1 oracle oinstall 133535622 Apr 17 17:37 p6880880_190000_Linux-x86-64.zip
jiekexu-t1:/u01/soft(jiekexu)$ unzip p6880880_190000_Linux-x86-64.zip
Archive: p6880880_190000_Linux-x86-64.zip
creating: OPatch/
inflating: OPatch/opatchauto
creating: OPatch/ocm/
creating: OPatch/ocm/doc/
creating: OPatch/ocm/bin/
creating: OPatch/ocm/lib/
extracting: OPatch/ocm/generic.zip
inflating: OPatch/datapatch.bat
inflating: OPatch/emdpatch.pl
extracting: OPatch/version.txt
creating: OPatch/private/
inflating: OPatch/private/commons-compress-1.26.0.jar
inflating: OPatch/private/jaxb-api-2.2.3.jar
inflating: OPatch/private/commons-io-2.15.1.jar
inflating: OPatch/opatchauto.cmd
creating: OPatch/oplan/
-----省略中间部分------
inflating: OPatch/modules/features/com.oracle.glcm.patch.opatch-common-api-classpath.jar
inflating: OPatch/modules/com.sun.org.apache.xml.internal.resolver.jar
inflating: OPatch/modules/com.oracle.glcm.patch.opatchauto-wallet_12.2.1.42.0.jar
inflating: OPatch/modules/com.sun.xml.bind.jaxb-jxc.jar
inflating: OPatch/modules/javax.activation.javax.activation.jar
jiekexu-t1:/u01/soft(jiekexu)$ ls -lrt
total 10413300
-rw-r--r-- 1 oracle oinstall 1319414278 Jan 6 2023 p31718723_112040_Linux-x86-64.zip
drwxr-x--- 15 oracle oinstall 4096 Apr 15 18:41 OPatch
-rw-r--r-- 1 oracle oinstall 3558403835 Apr 17 17:37 p36209493_190000_Linux-x86-64.zip
-rw-r--r-- 1 oracle oinstall 133535622 Apr 17 17:37 p6880880_190000_Linux-x86-64.zip
jiekexu-t1:/u01/soft(jiekexu)$ unzip p36209493_190000_Linux-x86-64.zip
Archive: p36209493_190000_Linux-x86-64.zip
creating: 36209493/
creating: 36209493/36233126/
creating: 36209493/36233126/36240578/
creating: 36209493/36233126/36240578/files/
creating: 36209493/36233126/36240578/files/bin/
-----省略中间部分------
inflating: 36209493/36233126/36233263/files/lib/xmlparserv2_sans_jaxp_services.jar/oracle/xml/parser/schema/XSDValidator$1.class
jiekexu-t1:/u01/soft(jiekexu)$ ls -lrt
total 10414452
-rw-r--r-- 1 oracle oinstall 1319414278 Jan 6 2023 p31718723_112040_Linux-x86-64.zip
drwxr-x--- 15 oracle oinstall 4096 Apr 15 18:41 OPatch
drwxrwxrwx 4 oracle oinstall 80 Apr 16 18:29 36209493
-rw-rw-r-- 1 oracle oinstall 2410549 Apr 16 22:23 PatchSearch.xml
-rw-r--r-- 1 oracle oinstall 3558403835 Apr 17 17:37 p36209493_190000_Linux-x86-64.zip
-rw-r--r-- 1 oracle oinstall 133535622 Apr 17 17:37 p6880880_190000_Linux-x86-64.zip
jiekexu-t1:/u01/soft(jiekexu)$ tree -L 2 36209493
36209493
|-- 36199232
| |-- etc
| |-- files
| |-- README.html
| `-- README.txt
|-- 36233126
| |-- 36233263
| |-- 36233343
| |-- 36240578
| |-- 36383196
| |-- 36460248
| |-- automation
| |-- bundle.xml
| |-- README.html
| `-- README.txt
|-- PatchSearch.xml
`-- README.html
10 directories, 7 files
2) 替换 OPatch
OPatch 工具必须在 12.2.0.1.41 及以上版本才可用,这里下载最新的 12.2.0.1.42 版本,必须要有 MOS 账号才可以哦。
https://updates.oracle.com/download/6880880.html
jiekexu-t1:/u01/soft(jiekexu)$ cd $ORACLE_HOME
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ ls
??[0m bin crs data demo env.ora instantclient jdk log nls OPatch_12.17 ord owm QOpatch relnotes root.sh.old.2 sdk sqlpatch ucp xdk
addnode cfgtoollogs css dbjava diagnostics has inventory jlib md odbc opmn ords perl R root.sh root.sh.old.3 slax sqlplus usm
apex client ctx dbs drdaas hs javavm ldap mgw olap oracore oss plsql racg root.sh.old runInstaller sqldeveloper srvm utl
assistants clone cv deinstall dv install jdbc lib network OPatch oraInst.loc oui precomp rdbms root.sh.old.1 schagent.conf sqlj suptools wwg
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ ll OPatch
total 156
drwxr-x--- 7 oracle oinstall 83 Apr 1 2022 auto
drwxr-x--- 2 oracle oinstall 31 Apr 1 2022 config
-rwxr-x--- 1 oracle oinstall 589 Apr 1 2022 datapatch
-rwxr-x--- 1 oracle oinstall 627 Apr 1 2022 datapatch.bat
drwxr-x--- 2 oracle oinstall 90 Apr 1 2022 docs
-rwxr-x--- 1 oracle oinstall 23550 Apr 1 2022 emdpatch.pl
drwxr-x--- 2 oracle oinstall 4096 Apr 1 2022 jlib
drwxr-x--- 6 oracle oinstall 198 Apr 1 2022 jre
drwxr-x--- 9 oracle oinstall 4096 Apr 1 2022 modules
drwxr-x--- 5 oracle oinstall 58 Apr 1 2022 ocm
-rwxr-x--- 1 oracle oinstall 50108 Apr 1 2022 opatch
-rwxr-x--- 1 oracle oinstall 1763 Apr 1 2022 opatchauto
-rwxr-x--- 1 oracle oinstall 393 Apr 1 2022 opatchauto.cmd
-rwxr-x--- 1 oracle oinstall 16554 Apr 1 2022 opatch.bat
-rwxr-x--- 1 oracle oinstall 4290 Apr 1 2022 opatch_env.sh
-rw-r----- 1 oracle oinstall 2551 Apr 1 2022 opatch.pl
drwxr-x--- 4 oracle oinstall 62 Apr 1 2022 opatchprereqs
-rwxr-x--- 1 oracle oinstall 3159 Apr 1 2022 operr
-rwxr-x--- 1 oracle oinstall 4218 Apr 1 2022 operr.bat
-rw-r----- 1 oracle oinstall 3177 Apr 1 2022 operr_readme.txt
drwxr-x--- 2 oracle oinstall 19 Apr 1 2022 oplan
drwxr-x--- 3 oracle oinstall 21 Apr 1 2022 oracle_common
drwxr-x--- 3 oracle oinstall 24 Apr 1 2022 plugins
drwxr-xr-x 2 oracle oinstall 39 Apr 1 2022 private
-rw-r----- 1 oracle oinstall 2980 Apr 1 2022 README.txt
drwxr-x--- 2 oracle oinstall 170 Apr 1 2022 scripts
-rw-r----- 1 oracle oinstall 27 Apr 1 2022 version.txt
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ cat OPatch/version.txt
OPATCH_VERSION:12.2.0.1.25
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ mv OPatch OPatch_12.25
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ cp -r /u01/soft/OPatch ./
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ opatch version
OPatch Version: 12.2.0.1.42
OPatch succeeded.
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1(jiekexu)$ cd
3) 停止应用访问、OGG、监听、数据库等
jiekexu-t1:/home/oracle(jiekexu)$ lsnrctl stop
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 17-APR-2024 17:44:39
Copyright (c) 1991, 2021, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=jiekexu-t1)(PORT=1521)))
The command completed successfully
jiekexu-t1:/home/oracle(jiekexu)$ sys
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Apr 17 17:44:43 2024
Version 19.12.0.0.0
Copyright (c) 1982, 2021, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.12.0.0.0
17:44:44 SYS@jiekexu> shu immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
17:45:22 SYS@jiekexu> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.12.0.0.0
jiekexu-t1:/home/oracle(jiekexu)$ cd /u01/soft/
jiekexu-t1:/u01/soft(jiekexu)$ ll
jiekexu-t1:/u01/soft(jiekexu)$ ps -ef | grep ogg
oracle 23109 19874 0 17:46 pts/0 00:00:00 grep --color=auto ogg
jiekexu-t1:/u01/soft(jiekexu)$ ps -ef | grep ext
oracle 23117 19874 0 17:46 pts/0 00:00:00 grep --color=auto ext
jiekexu-t1:/u01/soft(jiekexu)$ ls -lrt
-rw-r--r-- 1 oracle oinstall 1319414278 Jan 6 2023 p31718723_112040_Linux-x86-64.zip
drwxr-x--- 15 oracle oinstall 4096 Apr 15 18:41 OPatch
drwxrwxrwx 4 oracle oinstall 80 Apr 16 18:29 36209493
-rw-rw-r-- 1 oracle oinstall 2410549 Apr 16 22:23 PatchSearch.xml
-rw-r--r-- 1 oracle oinstall 3558403835 Apr 17 17:37 p36209493_190000_Linux-x86-64.zip
-rw-r--r-- 1 oracle oinstall 133535622 Apr 17 17:37 p6880880_190000_Linux-x86-64.zip
jiekexu-t1:/u01/soft(jiekexu)$ cd 36209493
jiekexu-t1:/u01/soft/36209493(jiekexu)$ ll
total 40
drwxr-xr-x 4 oracle oinstall 67 Mar 13 08:07 36199232
drwxr-x--- 8 oracle oinstall 159 Apr 12 18:03 36233126
-rw-rw-r-- 1 oracle oinstall 13912 Apr 16 17:01 PatchSearch.xml
-rw-rw-r-- 1 oracle oinstall 22575 Apr 16 21:39 README.html
jiekexu-t1:/u01/soft/36209493(jiekexu)$ cd /u01/soft/36209493/36233126/36233263
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$ ll
total 100
drwxr-x--- 3 oracle oinstall 21 Apr 12 18:04 custom
drwxr-x--- 3 oracle oinstall 20 Apr 12 18:04 etc
drwxr-x--- 45 oracle oinstall 4096 Apr 12 18:04 files
-rw-rw-r-- 1 oracle oinstall 90295 Apr 16 21:39 README.html
-rw-r--r-- 1 oracle oinstall 21 Apr 12 18:08 README.txt
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$ cd /u01/soft/36209493/36233126/
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ ll
total 152
drwxr-x--- 5 oracle oinstall 81 Apr 12 18:04 36233263
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36233343
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36240578
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36383196
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36460248
drwxr-x--- 2 oracle oinstall 4096 Apr 12 18:08 automation
-rw-rw-r-- 1 oracle oinstall 5824 Apr 12 18:44 bundle.xml
-rw-rw-r-- 1 oracle oinstall 139790 Apr 16 21:39 README.html
-rw-r--r-- 1 oracle oinstall 0 Apr 12 18:08 README.txt
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ ll 36233263
total 100
drwxr-x--- 3 oracle oinstall 21 Apr 12 18:04 custom
drwxr-x--- 3 oracle oinstall 20 Apr 12 18:04 etc
drwxr-x--- 45 oracle oinstall 4096 Apr 12 18:04 files
-rw-rw-r-- 1 oracle oinstall 90295 Apr 16 21:39 README.html
-rw-r--r-- 1 oracle oinstall 21 Apr 12 18:08 README.txt
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ ll 36240578
total 192
drwxr-x--- 3 oracle oinstall 21 Apr 12 18:03 custom
drwxr-x--- 3 oracle oinstall 20 Apr 12 18:03 etc
drwxr-x--- 21 oracle oinstall 234 Apr 12 18:03 files
-rw-r--r-- 1 oracle oinstall 192698 Apr 12 18:03 README.txt
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ cd /u01/soft/36209493/36233126/36233263
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$ ll
total 100
drwxr-x--- 3 oracle oinstall 21 Apr 12 18:04 custom
drwxr-x--- 3 oracle oinstall 20 Apr 12 18:04 etc
drwxr-x--- 45 oracle oinstall 4096 Apr 12 18:04 files
-rw-rw-r-- 1 oracle oinstall 90295 Apr 16 21:39 README.html
-rw-r--r-- 1 oracle oinstall 21 Apr 12 18:08 README.txt
4) 检查磁盘空间
安装 Oracle 补丁,直接读 /u01/soft/36209493/36233126 文件夹下的 README.html 就行,补丁冲突检测,磁盘空间检测呀详细信息可以查看。
For Oracle home, as home user:
Create file /tmp/patch_list_dbhome.txt with the following content:
% cat /tmp/patch_list_dbhome.txt
/36233126/36233263
/36233126/36240578
Run OPatch command to check if enough free space is available in the Oracle home:
% $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /tmp/patch_list_dbhome.txt
--补丁冲突检测,我这里没有安装其他小补丁,只有一个 RU12 的补丁集,不存在补丁冲突的问题。
For Oracle home, as home user:
% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /36233126/36233263
% $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /36233126/36240578
我这里是单机环境,安装在根目录,还有 45G 的磁盘空间足够了。
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/rootvg-lvroot 392G 347G 45G 89% /
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 52K 7.8G 1% /dev/shm
tmpfs 7.8G 17M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/sda1 1014M 190M 825M 19% /boot
tmpfs 1.6G 0 1.6G 0% /run/user/0
5) 安装 DB 补丁
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$ opatch apply
Oracle Interim Patch Installer version 12.2.0.1.42
Copyright (c) 2024, Oracle Corporation. All rights reserved.
Oracle Home : /u01/app/oracle/product/19.0.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from : /u01/app/oracle/product/19.0.0/dbhome_1/oraInst.loc
OPatch version : 12.2.0.1.42
OUI version : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2024-04-17_17-49-33PM_1.log
Verifying environment and performing prerequisite checks...
OPatch continues with these patches: 36233263
Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/19.0.0/dbhome_1')
Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '36233263' to OH '/u01/app/oracle/product/19.0.0/dbhome_1'
ApplySession: Optional component(s) [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.crypto.rsf, 19.0.0.0.0 ] , [ oracle.pg4mq, 19.0.0.0.0 ] , [ oracle.precomp.companion, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.oid.client, 19.0.0.0.0 ] , [ oracle.rdbms.tg4sybs, 19.0.0.0.0 ] , [ oracle.rdbms.tg4ifmx, 19.0.0.0.0 ] , [ oracle.xdk.companion, 19.0.0.0.0 ] , [ oracle.rdbms.tg4msql, 19.0.0.0.0 ] , [ oracle.rdbms.tg4tera, 19.0.0.0.0 ] , [ oracle.ons.cclient, 19.0.0.0.0 ] , [ oracle.pg4appc, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.options.olap.api, 19.0.0.0.0 ] , [ oracle.ons.eons.bwcompat, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.sdo.companion, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] not present in the Oracle Home or a higher version is found.
Patching component oracle.rdbms.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.util, 19.0.0.0.0...
Patching component oracle.rdbms, 19.0.0.0.0...
Patching component oracle.assistants.acf, 19.0.0.0.0...
Patching component oracle.assistants.deconfig, 19.0.0.0.0...
Patching component oracle.assistants.server, 19.0.0.0.0...
Patching component oracle.blaslapack, 19.0.0.0.0...
Patching component oracle.buildtools.rsf, 19.0.0.0.0...
Patching component oracle.ctx, 19.0.0.0.0...
Patching component oracle.dbdev, 19.0.0.0.0...
Patching component oracle.dbjava.ic, 19.0.0.0.0...
Patching component oracle.dbjava.jdbc, 19.0.0.0.0...
Patching component oracle.dbjava.ucp, 19.0.0.0.0...
Patching component oracle.duma, 19.0.0.0.0...
Patching component oracle.javavm.client, 19.0.0.0.0...
Patching component oracle.ldap.owm, 19.0.0.0.0...
Patching component oracle.ldap.rsf, 19.0.0.0.0...
Patching component oracle.ldap.security.osdt, 19.0.0.0.0...
Patching component oracle.marvel, 19.0.0.0.0...
Patching component oracle.network.rsf, 19.0.0.0.0...
Patching component oracle.odbc.ic, 19.0.0.0.0...
Patching component oracle.ons, 19.0.0.0.0...
Patching component oracle.ons.ic, 19.0.0.0.0...
Patching component oracle.oracore.rsf, 19.0.0.0.0...
Patching component oracle.perlint, 5.28.1.0.0...
Patching component oracle.precomp.common.core, 19.0.0.0.0...
Patching component oracle.precomp.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.crs, 19.0.0.0.0...
Patching component oracle.rdbms.dbscripts, 19.0.0.0.0...
Patching component oracle.rdbms.deconfig, 19.0.0.0.0...
Patching component oracle.rdbms.oci, 19.0.0.0.0...
Patching component oracle.rdbms.rsf.ic, 19.0.0.0.0...
Patching component oracle.rdbms.scheduler, 19.0.0.0.0...
Patching component oracle.rhp.db, 19.0.0.0.0...
Patching component oracle.rsf, 19.0.0.0.0...
Patching component oracle.sdo, 19.0.0.0.0...
Patching component oracle.sdo.locator.jrf, 19.0.0.0.0...
Patching component oracle.sqlplus, 19.0.0.0.0...
Patching component oracle.sqlplus.ic, 19.0.0.0.0...
Patching component oracle.wwg.plsql, 19.0.0.0.0...
Patching component oracle.xdk.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.hsodbc, 19.0.0.0.0...
Patching component oracle.ldap.client, 19.0.0.0.0...
Patching component oracle.rdbms.rman, 19.0.0.0.0...
Patching component oracle.rdbms.dv, 19.0.0.0.0...
Patching component oracle.xdk.parser.java, 19.0.0.0.0...
Patching component oracle.ldap.rsf.ic, 19.0.0.0.0...
Patching component oracle.oraolap.api, 19.0.0.0.0...
Patching component oracle.javavm.server, 19.0.0.0.0...
Patching component oracle.mgw.common, 19.0.0.0.0...
Patching component oracle.xdk, 19.0.0.0.0...
Patching component oracle.odbc, 19.0.0.0.0...
Patching component oracle.xdk.xquery, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.lbac, 19.0.0.0.0...
Patching component oracle.network.client, 19.0.0.0.0...
Patching component oracle.network.listener, 19.0.0.0.0...
Patching component oracle.install.deinstalltool, 19.0.0.0.0...
Patching component oracle.ctx.atg, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.core, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.ic, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.install.common, 19.0.0.0.0...
Patching component oracle.oraolap.dbscripts, 19.0.0.0.0...
Patching component oracle.sdo.locator, 19.0.0.0.0...
Patching component oracle.rdbms.drdaas, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.lbuilder, 19.0.0.0.0...
Patching component oracle.oraolap, 19.0.0.0.0...
Patching component oracle.ovm, 19.0.0.0.0...
Patching component oracle.rdbms.hs_common, 19.0.0.0.0...
Patching component oracle.ctx.rsf, 19.0.0.0.0...
Patching component oracle.dbtoolslistener, 19.0.0.0.0...
Patching component oracle.ldap.ssl, 19.0.0.0.0...
Patching component oracle.rdbms.install.plugins, 19.0.0.0.0...
Patching component oracle.precomp.common, 19.0.0.0.0...
Patching component oracle.precomp.lang, 19.0.0.0.0...
Patching component oracle.jdk, 1.8.0.201.0...
Patch 36233263 successfully applied.
Sub-set patch [32904851] has become inactive due to the application of a super-set patch [36233263].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2024-04-17_17-49-33PM_1.log
OPatch succeeded.
jiekexu-t1:/u01/soft/36209493/36233126/36233263(jiekexu)$ cd ..
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ ll
total 152
drwxr-x--- 5 oracle oinstall 81 Apr 12 18:04 36233263
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36233343
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36240578
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36383196
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36460248
drwxr-x--- 2 oracle oinstall 4096 Apr 12 18:08 automation
-rw-rw-r-- 1 oracle oinstall 5824 Apr 12 18:44 bundle.xml
-rw-rw-r-- 1 oracle oinstall 139790 Apr 16 21:39 README.html
-rw-r--r-- 1 oracle oinstall 0 Apr 12 18:08 README.txt
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ ls -lrt
total 152
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36240578
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36233343
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36460248
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36383196
drwxr-x--- 5 oracle oinstall 81 Apr 12 18:04 36233263
-rw-r--r-- 1 oracle oinstall 0 Apr 12 18:08 README.txt
drwxr-x--- 2 oracle oinstall 4096 Apr 12 18:08 automation
-rw-rw-r-- 1 oracle oinstall 5824 Apr 12 18:44 bundle.xml
-rw-rw-r-- 1 oracle oinstall 139790 Apr 16 21:39 README.html
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$
6) 安装 OCW 补丁
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ ll
total 152
drwxr-x--- 5 oracle oinstall 81 Apr 12 18:04 36233263
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36233343
drwxr-x--- 5 oracle oinstall 62 Apr 12 18:03 36240578
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36383196
drwxr-x--- 4 oracle oinstall 48 Apr 12 18:04 36460248
drwxr-x--- 2 oracle oinstall 4096 Apr 12 18:08 automation
-rw-rw-r-- 1 oracle oinstall 5824 Apr 12 18:44 bundle.xml
-rw-rw-r-- 1 oracle oinstall 139790 Apr 16 21:39 README.html
-rw-r--r-- 1 oracle oinstall 0 Apr 12 18:08 README.txt
jiekexu-t1:/u01/soft/36209493/36233126(jiekexu)$ cd 36240578
jiekexu-t1:/u01/soft/36209493/36233126/36240578(jiekexu)$ ll
total 192
drwxr-x--- 3 oracle oinstall 21 Apr 12 18:03 custom
drwxr-x--- 3 oracle oinstall 20 Apr 12 18:03 etc
drwxr-x--- 21 oracle oinstall 234 Apr 12 18:03 files
-rw-r--r-- 1 oracle oinstall 192698 Apr 12 18:03 README.txt
jiekexu-t1:/u01/soft/36209493/36233126/36240578(jiekexu)$ opatch apply
Oracle Interim Patch Installer version 12.2.0.1.42
Copyright (c) 2024, Oracle Corporation. All rights reserved.
Oracle Home : /u01/app/oracle/product/19.0.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from : /u01/app/oracle/product/19.0.0/dbhome_1/oraInst.loc
OPatch version : 12.2.0.1.42
OUI version : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2024-04-17_18-06-00PM_1.log
Verifying environment and performing prerequisite checks...
--------------------------------------------------------------------------------
Start OOP by Prereq process.
Launch OOP...
Oracle Interim Patch Installer version 12.2.0.1.42
Copyright (c) 2024, Oracle Corporation. All rights reserved.
Oracle Home : /u01/app/oracle/product/19.0.0/dbhome_1
Central Inventory : /u01/app/oraInventory
from : /u01/app/oracle/product/19.0.0/dbhome_1/oraInst.loc
OPatch version : 12.2.0.1.42
OUI version : 12.2.0.7.0
Log file location : /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2024-04-17_18-11-46PM_1.log
Verifying environment and performing prerequisite checks...
OPatch continues with these patches: 36240578
Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/u01/app/oracle/product/19.0.0/dbhome_1')
Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '36240578' to OH '/u01/app/oracle/product/19.0.0/dbhome_1'
ApplySession: Optional component(s) [ oracle.xag, 19.0.0.0.0 ] , [ oracle.rhp.crs, 19.0.0.0.0 ] , [ oracle.has.crs.cvu, 19.0.0.0.0 ] , [ oracle.has.crs, 19.0.0.0.0 ] , [ oracle.has.cvu, 19.0.0.0.0 ] not present in the Oracle Home or a higher version is found.
Patching component oracle.rdbms, 19.0.0.0.0...
Patching component oracle.has.rsf, 19.0.0.0.0...
Patching component oracle.has.db, 19.0.0.0.0...
Patching component oracle.rhp.db, 19.0.0.0.0...
Patching component oracle.has.db.cvu, 19.0.0.0.0...
Patching component oracle.has.common, 19.0.0.0.0...
Patching component oracle.has.common.cvu, 19.0.0.0.0...
Patching component oracle.rhp.common, 19.0.0.0.0...
Patch 36240578 successfully applied.
Sub-set patch [32916816] has become inactive due to the application of a super-set patch [36240578].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /u01/app/oracle/product/19.0.0/dbhome_1/cfgtoollogs/opatch/opatch2024-04-17_18-11-46PM_1.log
OPatch succeeded.
7)启动数据库,执行 datapatch 脚本
建议使用: datapatch -sanity_checks 可选步骤会运行一系列环境和数据库检查,以验证修补条件是否最佳。结果会显示在屏幕上,并说明严重程度和可能采取的措施。有关更多信息和操作,请参阅 Oracle 支持文档 2680521.1 Datapatch 用户指南。Oracle 强烈建议您执行此步骤。
然后,datapatch 实用程序将运行必要的应用脚本,将修改后的 SQL 文件加载到数据库中。dba_registry_sqlpatch 视图中将添加一个条目,以反映补丁应用程序。在 dba_registry_sqlpatch 视图中,验证 APPLY 的状态是否为 SUCCESS。对于任何其他状态,请参阅 Oracle 支持文档 2335899.2 Troubleshooting Assistant: 12c Datapatch Issues,了解更多信息和操作。
检查 $ORACLE_BASE/cfgtoollogs/sqlpatch/36233263/ 中的下列日志文件是否有错误:
36233263_apply_.log
其中,数据库 SID 是数据库 SID,CDB 名称是多租户容器数据库的名称,时间戳的形式是 YYYYMMMDD_HH_MM_SS。
如果任何(可插拔)数据库在执行 datapatch 后出现无效对象,则应运行 catcon.pl 重新验证这些对象。例如
export PATH=$PATH:$ORACLE_HOME/bin
cd $ORACLE_HOME/rdbms/admin
$ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -e -b utlrp -d $ORACLE_HOME/rdbms/admin utlrp.sql
jiekexu-t1:/u01/soft/36209493/36233126/36240578(jiekexu)$ sys
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Apr 17 18:24:42 2024
Version 19.23.0.0.0
Copyright (c) 1982, 2023, Oracle. All rights reserved.
Connected to an idle instance.
18:24:43 SYS@jiekexu>
18:24:44 SYS@jiekexu>
18:24:44 SYS@jiekexu> startup
ORACLE instance started.
Total System Global Area 6878655856 bytes
Fixed Size 8955248 bytes
Variable Size 4143972352 bytes
Database Buffers 2717908992 bytes
Redo Buffers 7819264 bytes
Database mounted.
Database opened.
18:25:24 SYS@jiekexu>
18:25:26 SYS@jiekexu>
18:25:26 SYS@jiekexu> !opatch lspatches
36240578;OCW RELEASE UPDATE 19.23.0.0.0 (36240578)
36233263;Database Release Update : 19.23.0.0.240416 (36233263)
32876380;OJVM RELEASE UPDATE: 19.12.0.0.210720 (32876380)
OPatch succeeded.
18:26:30 SYS@jiekexu> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.23.0.0.0
jiekexu-t1:/u01/soft/36209493/36233126/36240578(jiekexu)$ cd $ORACLE_HOME/OPatch
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1/OPatch(jiekexu)$ ll datapatch*
total 15
-rwxr-x--- 1 oracle oinstall 589 Apr 17 17:44 datapatch
-rwxr-x--- 1 oracle oinstall 627 Apr 17 17:44 datapatch.bat
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1/OPatch(jiekexu)$ ./datapatch -sanity_checks
SQL Patching sanity checks version 19.23.0.0.0 on Wed 17 Apr 2024 06:27:18 PM CST
Copyright (c) 2021, 2024, Oracle. All rights reserved.
Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20240417_182718_31257/sanity_checks_20240417_182718_31257.log
Running checks
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 942.
Use of uninitialized value $pdb in hash element at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 946.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 942.
Use of uninitialized value $pdb in hash element at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 946.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 942.
Use of uninitialized value $pdb in hash element at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 946.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
JSON report generated in /u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20240417_182718_31257/sqlpatch_sanity_checks_summary.json file
Checks completed. Printing report:
Check: Database component status - INFO
There should be no INVALID components prior patching due to risk of potential errors.
Listed components have a non-valid status.
Run '?/rdbms/admin/utlrp.sql' (per container) to try recompiling invalid objects and restore component status.
:
| COMPONENT | STATUS |
|-----------+---------|
| SDO | LOADING |
|-----------+---------|
Check: PDB Violations - OK
Check: Invalid System Objects - WARNING
There should be no INVALID objects in Oracle-maintained schemas before patching.
The following number of objects are INVALID (per container).
Run '?/rdbms/admin/utlrp.sql' (per container) to try recompiling invalid objects.
:
| OBJECT_COUNT |
|--------------|
| 9 |
|--------------|
Check: Tablespace Status - OK
Check: Backup jobs - OK
Check: Temp file exists - OK
Check: Temp file online - OK
Check: Data Pump running - OK
Check: Container status - OK
Check: Oracle Database Keystore - OK
Check: Dictionary statistics gathering - OK
Check: Scheduled Jobs - OK
Check: GoldenGate triggers - WARNING
Datapatch execution may fail with ORA- errors when Oracle GoldenGate triggers are enabled in the database.
At least one GoldenGate trigger is enabled in the database.
Refer to MOS Note 2301658.1 on how to disable listed trigger(s) before patching.
:
| STATUS | TRIGGER_NAME |
|---------+------------------------|
| ENABLED | GGS_DDL_TRIGGER_BEFORE |
|---------+------------------------|
Check: Logminer DDL triggers - OK
Check: Check sys public grants - OK
Check: Statistics gathering running - OK
Check: Optim dictionary upgrade parameter - OK
Check: Symlinks on oracle home path - OK
Check: Central Inventory - OK
Check: Queryable Inventory dba directories - OK
Check: Queryable Inventory locks - OK
Check: Queryable Inventory package - OK
Check: Queryable Inventory external table - OK
Check: Imperva processes - OK
Check: Guardium processes - OK
Check: Locale - OK
Refer to MOS Note 2680521.1 and debug log
/u01/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20240417_182718_31257/sanity_checks_debug_20240417_182718_31257.log
SQL Patching sanity checks completed on Wed 17 Apr 2024 06:28:41 PM CST
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1/OPatch(jiekexu)$
jiekexu-t1:/u01/app/oracle/product/19.0.0/dbhome_1/OPatch(jiekexu)$ ./datapatch -verbose
SQL Patching tool version 19.23.0.0.0 Production on Wed Apr 17 18:34:57 2024
Copyright (c) 2012, 2024, Oracle. All rights reserved.
Log file for this invocation: /u01/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_535_2024_04_17_18_34_57/sqlpatch_invocation.log
Connecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...done
Current state of interim SQL patches:
Interim patch 32876380 (OJVM RELEASE UPDATE: 19.12.0.0.210720 (32876380)):
Binary registry: Installed
SQL registry: Applied successfully on 01-APR-22 02.40.11.251757 PM
Current state of release update SQL patches:
Binary registry:
19.23.0.0.0 Release_Update 240406004238: Installed
SQL registry:
Applied 19.12.0.0.0 Release_Update 210716141810 successfully on 01-APR-22 02.40.11.224643 PM
Adding patches to installation queue and performing prereq checks...done
Installation queue:
No interim patches need to be rolled back
Patch 36233263 (Database Release Update : 19.23.0.0.240416 (36233263)):
Apply from 19.12.0.0.0 Release_Update 210716141810 to 19.23.0.0.0 Release_Update 240406004238
No interim patches need to be applied
Installing patches...
Patch installation complete. Total patches installed: 1
Validating logfiles...done
Patch 36233263 apply: SUCCESS
logfile: /u01/app/oracle/cfgtoollogs/sqlpatch/36233263/25638263/36233263_apply_TESTOGG_2024Apr17_18_37_29.log (no errors)
SQL Patching tool complete on Wed Apr 17 19:01:28 2024
8) 查看补丁更新视图
col ACTION_TIME for a30
col DESCRIPTION for a55
select patch_id, action,status,action_time,description from dba_registry_sqlpatch;
PATCH_ID ACTION STATUS ACTION_TIME DESCRIPTION
---------- --------------- ------------------------- ------------------------------ -------------------------------------------------------
29517242 APPLY SUCCESS 13-JUL-21 08.09.15.437183 PM Database Release Update : 19.3.0.0.190416 (29517242)
32876380 APPLY SUCCESS 01-APR-22 02.40.11.251757 PM OJVM RELEASE UPDATE: 19.12.0.0.210720 (32876380)
32904851 APPLY SUCCESS 01-APR-22 02.40.11.224643 PM Database Release Update : 19.12.0.0.210720 (32904851)
36233263 APPLY SUCCESS 17-APR-24 06.59.37.027240 PM Database Release Update : 19.23.0.0.240416 (36233263)
19:20:24 SYS@jiekexu> !opatch lspatches
36240578;OCW RELEASE UPDATE 19.23.0.0.0 (36240578)
36233263;Database Release Update : 19.23.0.0.240416 (36233263)
32876380;OJVM RELEASE UPDATE: 19.12.0.0.210720 (32876380) --OJVM 我这里没有更新
OPatch succeeded.
其他补丁相关文章链接:
https://mp.weixin.qq.com/s/2DoBV-8PsoYENgwM3BAIaQ
https://mp.weixin.qq.com/s/zS4aE3TfhbMwDk37nIEGfg
https://mp.weixin.qq.com/s/C0YbdGs2SVxqDuTm1g83fw
https://mp.weixin.qq.com/s/0jPYvtfFezGLhq-S-9RqGQ
https://mp.weixin.qq.com/s/Q45cfsRz1Oa4dSzi8_2Ktg
https://mp.weixin.qq.com/s/VGyb-UjbI1IFo1llEfVduQ
https://www.modb.pro/db/27255
https://www.modb.pro/doc/1602
https://www.modb.pro/doc/4638
https://www.modb.pro/download/39727
全文完,希望可以帮到正在阅读的你,如果觉得有帮助,可以分享给你身边的朋友,同事,你关心谁就分享给谁,一起学习共同进步~~~
❤️ 欢迎关注我的公众号【JiekeXu DBA之路】,一起学习新知识!
————————————————————————————
公众号:JiekeXu DBA之路
墨天轮:https://www.modb.pro/u/4347
CSDN :https://blog.csdn.net/JiekeXu
ITPUB:https://blog.itpub.net/69968215
腾讯云:https://cloud.tencent.com/developer/user/5645107
————————————————————————————