当前位置: 首页 > news >正文

Oracle 19c rac 补丁升级,从19.7 to19.22-集群

1. 补丁包概述

数据库环境

角色

数据库

IP地址

数据库版本

主机名

数据库名称

源端

RAC

172.30.21.166/167

19.7

hfcwdb66/hfcwdb67

hfdb

将以下补丁包上传到/soft下


上传到两个节点的soft目录下:p6880880_190000_Linux-x86-64.zip (更新opatch)
p35940989_190000_Linux-x86-64.zip(GI包,grid软件升级包)
p35943157_190000_Linux-x86-64.zip(DB包,数据库升级包)

通过网盘分享的文件:oracle 19.22 补丁
链接: https://pan.baidu.com/s/1j9-ZVe7eojN3VZ_fn3ja1g?pwd=y3ih 提取码: y3ih 

 column product format A40
column version format A15
column version_full format A20
column status format A15
select * from product_component_version;SYS@hfdb1>  select * from product_component_version;PRODUCT                                  VERSION         VERSION_FULL         STATUS
---------------------------------------- --------------- -------------------- ------------------------------
Oracle Database 19c Enterprise Edition   19.0.0.0.0      19.7.0.0.0           Production

2. OPatch检查和更新

opatch 现在的版本

[grid@hfdb30:/oracle/app/19c/grid/OPatch]$opatch version
OPatch Version: 12.2.0.1.17OPatch succeeded.
[grid@hfdb30:/oracle/app/19c/grid/OPatch]$

grid 替换 opatch(两个节点都要执行)

注意以下所有操作都是root用户执行的,但是进行查询版本的时候需要进入配置过环境变量的用户

替换完后使用opatch version 命令查看,这里要求所有的节点的 grid 和 oralce 用户下的 opatch 都要升级,我这里是 2 节点的 rac,所以需要升级 4 次。

unzip -o p6880880_190000_Linux-x86-64.zipsu - root
cd /softchown -R grid:oinstall /soft
su - grid -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /oracle/app/19c/grid"
su - grid -c "unzip -q /soft/p35940989_190000_Linux-x86-64.zip -d /soft"chown -R oracle:oinstall /soft
su - oracle -c "unzip -q -o /soft/p35943157_190000_Linux-x86-64.zip -d /oracle/app/oracle/product/19c/db_1"opatch version

oracle 替换 opatch(两个节点都要执行)

su - oracle -c "unzip -q -o /soft/p6880880_190000_Linux-x86-64.zip -d /oracle/app/oracle/product/19c/db_1"su - oracle
opatch version-- 部分操作
[root@hfcwdb66 grid]# mv OPatch OPatch.bak
[root@hfcwdb66 grid]# cp -r /soft/OPatch/ ./
[root@hfcwdb66 grid]# chown grid:oinstall -R OPatch
[root@hfcwdb66 grid]# su - grid
上一次登录:一 12月  9 20:04:06 CST 2024
[grid@hfcwdb66:/home/grid]$cd $ORACLE_HOME
[grid@hfcwdb66:/oracle/app/19c/grid]$cd OPatch
[grid@hfcwdb66:/oracle/app/19c/grid/OPatch]$opatch version
OPatch Version: 12.2.0.1.44OPatch succeeded.

3. 验证Oracle Inventory的有效性

oracle用户和 grid 用户都执行:(两个节点都要执行)

GI HOME 和DB HOME 都需要验证,分别使用grid和oracle用户执行如下命令,确保返回SUCCESS。

$ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME 

4. 运行 OPatch 冲突检查(两个节点都要执行)

grid 用户:

su - grid
cd /oracle/app/19c/grid/OPatch/ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/33575402
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35943157
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35956421
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35967489
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/36115038-- 部分操作
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35943157
Oracle Interim Patch Installer version 12.2.0.1.41
Copyright (c) 2024, Oracle Corporation.  All rights reserved.PREREQ sessionOracle Home       : /oracle/app/oracle/product/19c/db_1
Central Inventory : /oracle/app/oraInventoryfrom           : /oracle/app/oracle/product/19c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.41
OUI version       : 12.2.0.7.0
Log file location : /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2024-12-10_17-45-20PM_1.logInvoking prereq "checkconflictagainstohwithdetail"Prereq "checkConflictAgainstOHWithDetail" passed.OPatch succeeded.
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35967489
Oracle Interim Patch Installer version 12.2.0.1.41
Copyright (c) 2024, Oracle Corporation.  All rights reserved.PREREQ sessionOracle Home       : /oracle/app/oracle/product/19c/db_1
Central Inventory : /oracle/app/oraInventoryfrom           : /oracle/app/oracle/product/19c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.41
OUI version       : 12.2.0.7.0
Log file location : /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2024-12-10_17-46-16PM_1.logInvoking prereq "checkconflictagainstohwithdetail"Prereq "checkConflictAgainstOHWithDetail" passed.OPatch succeeded.

oracle 用户

su - oracle
cd /oracle/app/19c/grid/OPatch$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35943157
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35967489-- 部分操作
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35943157
Oracle Interim Patch Installer version 12.2.0.1.41
Copyright (c) 2024, Oracle Corporation.  All rights reserved.PREREQ sessionOracle Home       : /oracle/app/oracle/product/19c/db_1
Central Inventory : /oracle/app/oraInventoryfrom           : /oracle/app/oracle/product/19c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.41
OUI version       : 12.2.0.7.0
Log file location : /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2024-12-10_17-45-20PM_1.logInvoking prereq "checkconflictagainstohwithdetail"Prereq "checkConflictAgainstOHWithDetail" passed.OPatch succeeded.
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /soft/35940989/35967489
Oracle Interim Patch Installer version 12.2.0.1.41
Copyright (c) 2024, Oracle Corporation.  All rights reserved.PREREQ sessionOracle Home       : /oracle/app/oracle/product/19c/db_1
Central Inventory : /oracle/app/oraInventoryfrom           : /oracle/app/oracle/product/19c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.41
OUI version       : 12.2.0.7.0
Log file location : /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2024-12-10_17-46-16PM_1.logInvoking prereq "checkconflictagainstohwithdetail"Prereq "checkConflictAgainstOHWithDetail" passed.OPatch succeeded.
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$vim /soft/patch_list_dbhome.txt
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /soft/patch_list_dbhome.txt
Oracle Interim Patch Installer version 12.2.0.1.41
Copyright (c) 2024, Oracle Corporation.  All rights reserved.PREREQ sessionOracle Home       : /oracle/app/oracle/product/19c/db_1
Central Inventory : /oracle/app/oraInventoryfrom           : /oracle/app/oracle/product/19c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.41
OUI version       : 12.2.0.7.0
Log file location : /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2024-12-10_17-51-31PM_1.logInvoking prereq "checksystemspace"Prereq "checkSystemSpace" passed.OPatch succeeded.

5. 运行opatch命令检查GI HOME下是否有足够的空间

-- grid用户
vim /soft/patch_list_gihome.txt/soft/35940989/35943157
/soft/35940989/35967489
/soft/35940989/35956421
/soft/35940989/36115038
/soft/35940989/33575402$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /soft/patch_list_gihome.txt-- oracle 用户
im /soft/patch_list_dbhome.txt/soft/35940989/35943157
/soft/35940989/35967489$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /soft/patch_list_dbhome.txt--部分操作
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$vim /soft/patch_list_dbhome.txt
[oracle@hfcwdb66:/oracle/app/19c/grid/OPatch]$$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /soft/patch_list_dbhome.txt
Oracle Interim Patch Installer version 12.2.0.1.41
Copyright (c) 2024, Oracle Corporation.  All rights reserved.PREREQ sessionOracle Home       : /oracle/app/oracle/product/19c/db_1
Central Inventory : /oracle/app/oraInventoryfrom           : /oracle/app/oracle/product/19c/db_1/oraInst.loc
OPatch version    : 12.2.0.1.41
OUI version       : 12.2.0.7.0
Log file location : /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatch/opatch2024-12-10_17-51-31PM_1.logInvoking prereq "checksystemspace"Prereq "checkSystemSpace" passed.OPatch succeeded.

6. 补丁冲突检测与解决(修补程序)

su - root
cd /
/oracle/app/19c/grid/OPatch/opatchauto apply /soft/35940989  -oh /oracle/app/19c/grid -analyze --回滚(这里不需要执行,失败可以执行)
su - root
/u01/app/19.3.0/grid/OPatch/opatchauto rollback /soft/35940989 -analyze -- 部分操作
[root@hfcwdb66 /]# /oracle/app/19c/grid/OPatch/opatchauto apply /soft/35940989  -oh /oracle/app/19c/grid -analyzeOPatchauto session is initiated at Tue Dec 10 17:55:25 2024System initialization log file is /oracle/app/19c/grid/cfgtoollogs/opatchautodb/systemconfig2024-12-10_05-55-35PM.log.会话日志文件是/oracle/app/19c/grid/cfgtoollogs/opatchauto/opatchauto2024-12-10_05-55-42PM.log
此会话的 ID 为 F1LJExecuting OPatch prereq operations to verify patch applicability on home /oracle/app/19c/grid
Patch applicability verified successfully on home /oracle/app/19c/gridExecuting patch validation checks on home /oracle/app/19c/grid
Patch validation checks successfully completed on home /oracle/app/19c/gridOPatchAuto 成功。--------------------------------Summary--------------------------------Analysis for applying patches has completed successfully:Host:hfcwdb66
CRS Home:/oracle/app/19c/grid
Version:19.0.0.0.0==Following patches were SUCCESSFULLY analyzed to be applied:Patch: /soft/35940989/35967489
Log: /oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-12-10_17-56-14下午_1.logPatch: /soft/35940989/35956421
Log: /oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-12-10_17-56-14下午_1.logPatch: /soft/35940989/33575402
Log: /oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-12-10_17-56-14下午_1.logPatch: /soft/35940989/36115038
Log: /oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-12-10_17-56-14下午_1.logPatch: /soft/35940989/35943157
Log: /oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/opatch2024-12-10_17-56-14下午_1.logOPatchauto session completed at Tue Dec 10 17:57:56 2024
Time taken to complete the session 2 minutes, 22 seconds
  • 这里节点1和节点2都需要执行,否则在执行过程会报错
# 下面这个文件节点2可能没有,建议从节点1copy在授权 scp -r /oracle/app/oraInventory/ContentsXML/oui-patch.xml hfcwdb67:/oracle/app/oraInventory/ContentsXML
chmod 777 /oracle/app/oraInventory/ContentsXML/oui-patch.xml
cd /soft/35940989/35967489/files/bin/
chmod 777 *-- 部分操作
[root@hfcwdb66 ContentsXML]# chmod 777 /oracle/app/oraInventory/ContentsXML/oui-patch.xml
[root@hfcwdb66 ContentsXML]# cd /soft/35940989/35967489/files/bin/
[root@hfcwdb66 bin]# chmod 777 *
[root@hfcwdb66 bin]# cd /oracle/app/oraInventory/
[root@hfcwdb66 oraInventory]# ll
总用量 12
drwxrwx--- 4 grid oinstall   64 3月   8 2023 backup
drwxrwx--- 2 grid oinstall   81 3月   8 2023 ContentsXML
drwxrwx--- 6 grid oinstall 4096 3月   8 2023 logs
-rw-rw---- 1 grid oinstall   59 3月   8 2023 oraInst.loc
-rwxrwx--- 1 grid oinstall 1644 3月   8 2023 orainstRoot.sh
[root@hfcwdb66 oraInventory]# cd ContentsXML/
[root@hfcwdb66 ContentsXML]# ll
总用量 16
-rw-rw---- 1 grid oinstall 300 3月   8 2023 comps.xml
-rw-rw---- 1 grid oinstall 557 3月   8 2023 inventory.xml
-rw-rw---- 1 grid oinstall 292 3月   8 2023 libs.xml
-rwxrwxrwx 1 grid oinstall 174 3月   8 2023 oui-patch.xml
[root@hfcwdb66 ContentsXML]# scp oui-patch.xml hfcwdb67:/oracle/app/oraInventory/ContentsXML/
root@hfcwdb67's password:
oui-patch.xml                                                                     

7. 使用root用户应用补丁【节点1打完,再打节点2】

节点 1 停库停监听,节点 2 启库启监听,节点 1, 先打 grid,再打 oralce,打完后把节点 1 启库启监听,再打节点 2,节点 2 停库停监听。

#打节点1补丁
-- 停止节点1的数据库和监听,开始节点2 的监听和数据库
su - root
cd /
export ORACLE_BASE=/oracle/app/grid 
export ORACLE_HOME=/oracle/app/19c/grid 
export PATH=/oracle/app/19c/grid/bin:/oracle/app/19d/grid/OPatch:$PATH -- 打grid
/oracle/app/19c/grid/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/19c/grid 
-- 补丁时间比较长,日志在/oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/
-- [Dec 10, 2024 9:57:46 PM] [INFO]    EXITING METHOD: NApply(patches,options) --日志显示这个级别上是已经安装好了。# 查看版本的命令
opatch lspatches -- 打oracle
/oracle/app/oracle/product/19c/db_1/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/oracle/product/19c/db_1
-- 补丁时间比较长,日志在/oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatchauto/core/opatch/# 查看版本的命令
opatch lspatches #打节点2补丁
-- 启动节点1数据库
srvctl start instance -d hfcwdb -i hfcwdb1# 以下是节点2的
srvctl stop instance -d hfcwdb -i hfcwdb2-- 打grid
/oracle/app/19c/grid/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/19c/grid
-- 补丁时间比较长,日志在/oracle/app/19c/grid/cfgtoollogs/opatchauto/core/opatch/
-- EXITING METHOD: NApply(patches,options) --日志显示这个级别上是已经安装好了。-- 打oracle
/oracle/app/oracle/product/19c/db_1/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/oracle/product/19c/db_1
-- [Dec 10, 2024 10:49:24 PM] [INFO]   EXITING METHOD: NApply(patches,options)  --日志显示这个级别上是已经安装好了。# 查看版本的命令
opatch lspatches ===============================================其他说也可以直接以前打,但是我这里失败,所以我用的上面的分开给grid和oracle打补丁==================================# 节点1
su - root
cd /
export ORACLE_BASE=/oracle/app/grid 
export ORACLE_HOME=/oracle/app/19c/grid 
export PATH=/oracle/app/19c/grid/bin:/oracle/app/19d/grid/OPatch:$PATH 
# 打补丁
/oracle/app/19c/grid/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/19c/grid 
或
opatchauto apply /soft/35940989 # 节点2,在打节点2之前,注意先把节点一的服务启动
su - root
cd /
# 打补丁
/u01/app/19.3.0/grid/OPatch/opatchauto apply /soft/35940989
或
opatchauto apply /soft/35940989 # 查看版本的命令
opatch lspatches ==============================================================================================================-- 部分日志
[grid@hfcwdb66:/oracle/app/19c/grid/OPatch]$opatch lspatches
36115038;TOMCAT RELEASE UPDATE 19.0.0.0.0 (36115038)
35967489;OCW RELEASE UPDATE 19.22.0.0.0 (35967489)
35956421;ACFS RELEASE UPDATE 19.22.0.0.0 (35956421)
35943157;Database Release Update : 19.22.0.0.240116 (35943157)
33575402;DBWLM RELEASE UPDATE 19.0.0.0.0 (33575402)OPatch succeeded.[root@hfcwdb66 /]# /oracle/app/oracle/product/19c/db_1/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/oracle/product/19c/db_1OPatchauto session is initiated at Tue Dec 10 20:03:23 2024System initialization log file is /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatchautodb/systemconfig2024-12-10_08-03-42PM.log.会话日志文件是/oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatchauto/opatchauto2024-12-10_08-04-04PM.log
此会话的 ID 为 Q2PEExecuting OPatch prereq operations to verify patch applicability on home /oracle/app/oracle/product/19c/db_1
Patch applicability verified successfully on home /oracle/app/oracle/product/19c/db_1Executing patch validation checks on home /oracle/app/oracle/product/19c/db_1
Patch validation checks successfully completed on home /oracle/app/oracle/product/19c/db_1Verifying SQL patch applicability on home /oracle/app/oracle/product/19c/db_1
No sqlpatch prereq operations are required on the local node for this home
No step execution required.........Preparing to bring down database service on home /oracle/app/oracle/product/19c/db_1
No step execution required.........Performing prepatch operation on home /oracle/app/oracle/product/19c/db_1
Prepatch operation completed successfully on home /oracle/app/oracle/product/19c/db_1Start applying binary patch on home /oracle/app/oracle/product/19c/db_1[oracle@hfcwdb66:/oracle/app/oracle/product/19c/db_1/OPatch]$opatch lspatches
35967489;OCW RELEASE UPDATE 19.22.0.0.0 (35967489)
35943157;Database Release Update : 19.22.0.0.240116 (35943157)
30805684;OJVM RELEASE UPDATE: 19.7.0.0.200414 (30805684)OPatch succeeded.
[oracle@hfcwdb66:/oracle/app/oracle/product/19c/db_1/OPatch]$exit
logout
[root@hfcwdb66 ~]# crsctl check crs
CRS-4639: Could not contact Oracle High Availability Services-- 启动报错
[root@hfcwdb66 ~]# crsctl start crs
CRS-6706: Oracle Clusterware Release patch level ('2194295427') does not match Software patch level ('1476904475'). Oracle Clusterware cannot be started.
CRS-4000: Command Start failed, or completed with errors.-- 解决
[root@hfcwdb66 ~]# clscfg -localpatch
clscfg: EXISTING configuration version 0 detected.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
[root@hfcwdb66 ~]# /oracle/app/19c/grid/crs/install/rootcrs.sh -lock
Using configuration parameter file: /oracle/app/19c/grid/crs/install/crsconfig_params
The log of current session can be found at:/oracle/app/grid/crsdata/hfcwdb66/crsconfig/crslock_hfcwdb66_2024-12-10_08-56-23PM.log
2024/12/10 20:56:31 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'[root@hfcwdb66 ~]# crsctl start crs
CRS-4123: Oracle High Availability Services has been started.--节点2:
[root@hfcwdb67 /]# /oracle/app/19c/grid/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/19c/gridOPatchauto session is initiated at Tue Dec 10 21:04:10 2024System initialization log file is /oracle/app/19c/grid/cfgtoollogs/opatchautodb/systemconfig2024-12-10_09-04-28PM.log.Session log file is /oracle/app/19c/grid/cfgtoollogs/opatchauto/opatchauto2024-12-10_09-05-14PM.log
The id for this session is RCAUExecuting OPatch prereq operations to verify patch applicability on home /oracle/app/19c/grid
Patch applicability verified successfully on home /oracle/app/19c/gridExecuting patch validation checks on home /oracle/app/19c/grid
Patch validation checks successfully completed on home /oracle/app/19c/gridPerforming prepatch operations on CRS - bringing down CRS service on home /oracle/app/19c/grid
Prepatch operation log file location: /oracle/app/grid/crsdata/hfcwdb67/crsconfig/crs_prepatch_apply_inplace_hfcwdb67_2024-12-10_09-14-04PM.log
CRS service brought down successfully on home /oracle/app/19c/gridStart applying binary patch on home /oracle/app/19c/grid[grid@hfcwdb67:/oracle/app/19c/grid/OPatch]$opatch lspatches
36115038;TOMCAT RELEASE UPDATE 19.0.0.0.0 (36115038)
35967489;OCW RELEASE UPDATE 19.22.0.0.0 (35967489)
35956421;ACFS RELEASE UPDATE 19.22.0.0.0 (35956421)
35943157;Database Release Update : 19.22.0.0.240116 (35943157)
33575402;DBWLM RELEASE UPDATE 19.0.0.0.0 (33575402)OPatch succeeded.[root@hfcwdb67 /]# /oracle/app/oracle/product/19c/db_1/OPatch/opatchauto apply /soft/35940989 -oh /oracle/app/oracle/product/19c/db_1OPatchauto session is initiated at Tue Dec 10 22:09:16 2024System initialization log file is /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatchautodb/systemconfig2024-12-10_10-09-26PM.log.Session log file is /oracle/app/oracle/product/19c/db_1/cfgtoollogs/opatchauto/opatchauto2024-12-10_10-09-33PM.log
The id for this session is JG1MExecuting OPatch prereq operations to verify patch applicability on home /oracle/app/oracle/product/19c/db_1
Patch applicability verified successfully on home /oracle/app/oracle/product/19c/db_1Executing patch validation checks on home /oracle/app/oracle/product/19c/db_1
Patch validation checks successfully completed on home /oracle/app/oracle/product/19c/db_1Verifying SQL patch applicability on home /oracle/app/oracle/product/19c/db_1
No sqlpatch prereq operations are required on the local node for this home
No step execution required.........Preparing to bring down database service on home /oracle/app/oracle/product/19c/db_1
No step execution required.........Performing prepatch operation on home /oracle/app/oracle/product/19c/db_1
Prepatch operation completed successfully on home /oracle/app/oracle/product/19c/db_1Start applying binary patch on home /oracle/app/oracle/product/19c/db_1Last login: Tue Dec 10 22:49:30 2024
[root@hfcwdb67 ~]# crsctl check crs
CRS-4639: Could not contact Oracle High Availability Services
[root@hfcwdb67 ~]# crsctl start crs
CRS-6706: Oracle Clusterware Release patch level ('2194295427') does not match Software patch level ('1476904475'). Oracle Clusterware cannot be started.
CRS-4000: Command Start failed, or completed with errors.
[root@hfcwdb67 ~]# clscfg -localpatch
clscfg: EXISTING configuration version 0 detected.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
[root@hfcwdb67 ~]# /oracle/app/19c/grid/crs/install/rootcrs.sh -lock
Using configuration parameter file: /oracle/app/19c/grid/crs/install/crsconfig_params
The log of current session can be found at:/oracle/app/grid/crsdata/hfcwdb67/crsconfig/crslock_hfcwdb67_2024-12-10_10-51-25PM.log
2024/12/10 22:51:33 CLSRSC-329: Replacing Clusterware entries in file 'oracle-ohasd.service'
[root@hfcwdb67 ~]# crsctl start crs
CRS-4123: Oracle High Availability Services has been started.

8. 执行相关的升级(只需在一个节点上面执行)

sqlplus / as sysdba
startup
quit
cd $ORACLE_HOME/OPatch
./datapatch -sanity_checks
./datapatch -verbose-- 操作
[oracle@hfcwdb67:/home/oracle]$sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Tue Dec 10 22:52:57 2024
Version 19.22.0.0.0Copyright (c) 1982, 2023, Oracle.  All rights reserved.Connected to an idle instance.SQL> startup
ORACLE instance started.Total System Global Area 2415915888 bytes
Fixed Size                  8942448 bytes
Variable Size             603979776 bytes
Database Buffers         1795162112 bytes
Redo Buffers                7831552 bytes
Database mounted.
Database opened.
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.22.0.0.0
[oracle@hfcwdb67:/home/oracle]$cd $ORACLE_HOME/OPatch
[oracle@hfcwdb67:/oracle/app/oracle/product/19c/db_1/OPatch]$./datapatch -sanity_checks
SQL Patching sanity checks version 19.22.0.0.0 on Tue 10 Dec 2024 10:53:57 PM CST
Copyright (c) 2021, 2024, Oracle.  All rights reserved.Log file for this invocation: /oracle/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20241210_225357_26521/sanity_checks_20241210_225357_26521.logRunning checks
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 942.
Use of uninitialized value $pdb in hash element at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 946.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
Use of uninitialized value $pdb in concatenation (.) or string at /oracle/app/oracle/product/19c/db_1/sqlpatch/sqlpatch_sanity_checks.pm line 932.
JSON report generated in /oracle/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20241210_225357_26521/sqlpatch_sanity_checks_summary.json file
Checks completed. Printing report:Check: Database component status - OK
Check: PDB Violations - OK
Check: Invalid System Objects - OK
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 - WARNINGExecution of scheduler jobs while database patching is running may lead to failures and/or performance issues.There are jobs currently running or scheduled to be executed during next hour.Consider patching the database when jobs are not running and will not be scheduled to run during patching.To check for jobs that are running or scheduled to run:SELECT owner as schema_name, job_name, state, next_run_dateFROM sys.all_scheduler_jobsWHERE state = 'RUNNING'UNIONSELECT owner as schema_name, job_name, state, next_run_dateFROM sys.all_scheduler_jobsWHERE state = 'SCHEDULED'and cast(next_run_date as date) > sysdateand cast(next_run_date as date) < sysdate + 1/24;:|         JOB_NAME         |            NEXT_RUN_DATE            | SCHEMA_NAME |   STATE   ||--------------------------+-------------------------------------+-------------+-----------||  CLEANUP_NON_EXIST_OBJ   | 10-DEC-24 11.38.31.255550 PM +08:00 |     SYS     | SCHEDULED ||--------------------------+-------------------------------------+-------------+-----------|| CLEANUP_ONLINE_IND_BUILD | 10-DEC-24 11.52.12.122451 PM +08:00 |     SYS     | SCHEDULED ||--------------------------+-------------------------------------+-------------+-----------||    CLEANUP_ONLINE_PMO    | 10-DEC-24 11.52.52.590843 PM +08:00 |     SYS     | SCHEDULED ||--------------------------+-------------------------------------+-------------+-----------||   CLEANUP_TAB_IOT_PMO    | 10-DEC-24 11.52.22.644627 PM +08:00 |     SYS     | SCHEDULED ||--------------------------+-------------------------------------+-------------+-----------||  CLEANUP_TRANSIENT_PKG   | 10-DEC-24 11.52.42.000000 PM +08:00 |     SYS     | SCHEDULED ||--------------------------+-------------------------------------+-------------+-----------||  CLEANUP_TRANSIENT_TYPE  | 10-DEC-24 11.38.30.925943 PM +08:00 |     SYS     | SCHEDULED ||--------------------------+-------------------------------------+-------------+-----------|
Check: GoldenGate triggers - OK
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 - ERRORDatapatch uses opatch_xml_inv which is an external table to get OPatch Inventory information.It was not possible to get information from opatch_xml_inv table.Verify external tables work correctly in your environment. Refer to MOS Note 1602089.1 for more details.hfcwdb2:| RESULT  ||---------|| Failure ||---------|
Check: Imperva processes - OK
Check: Guardium processes - OK
Check: Locale - OKRefer to MOS Note 2680521.1 and debug log
/oracle/app/oracle/cfgtoollogs/sqlpatch/sanity_checks_20241210_225357_26521/sanity_checks_debug_20241210_225357_26521.logSQL Patching sanity checks completed on Tue 10 Dec 2024 10:54:56 PM CST
[oracle@hfcwdb67:/oracle/app/oracle/product/19c/db_1/OPatch]$./datapatch -verbose
SQL Patching tool version 19.22.0.0.0 Production on Tue Dec 10 22:55:13 2024
Copyright (c) 2012, 2024, Oracle.  All rights reserved.Log file for this invocation: /oracle/app/oracle/cfgtoollogs/sqlpatch/sqlpatch_27778_2024_12_10_22_55_13/sqlpatch_invocation.logConnecting to database...OK
Gathering database info...done
Bootstrapping registry and package to current versions...done
Determining current state...doneCurrent state of interim SQL patches:
Interim patch 30805684 (OJVM RELEASE UPDATE: 19.7.0.0.200414 (30805684)):Binary registry: InstalledSQL registry: Applied successfully on 09-MAR-23 12.32.05.334355 AMCurrent state of release update SQL patches:Binary registry:19.22.0.0.0 Release_Update 240104023954: InstalledSQL registry:Applied 19.7.0.0.0 Release_Update 200404035018 successfully on 09-MAR-23 12.32.05.290503 AMAdding patches to installation queue and performing prereq checks...done
Installation queue:No interim patches need to be rolled backPatch 35943157 (Database Release Update : 19.22.0.0.240116 (35943157)):Apply from 19.7.0.0.0 Release_Update 200404035018 to 19.22.0.0.0 Release_Update 240104023954No interim patches need to be applied
Patch installation complete.  Total patches installed: 1Installing patches...
Validating logfiles...done
Patch 35943157 apply: SUCCESSlogfile: /oracle/app/oracle/cfgtoollogs/sqlpatch/35943157/25527362/35943157_apply_HFCWDB_2024Dec10_22_57_27.log (no errors)
SQL Patching tool complete on Tue Dec 10 23:07:09 2024
[oracle@hfcwdb67:/oracle/app/oracle/product/19c/db_1/OPatch]$

Opatch升级的日志,方便以后排错。

通过网盘分享的文件:opatch2024-12-10_22-11-50PM_1.log等4个文件
链接: https://pan.baidu.com/s/1dVur6tANXEIje6CUWAryRA?pwd=6ynq 提取码: 6ynq 

9. 回退补丁升级

su - root
cd //oracle/app/19c/grid/OPatch/opatchauto rollback /soft/35940989
或
opatchauto rollback /soft/35940989 --部分日志
[root@hfcwdb66 /]# /oracle/app/19c/grid/OPatch/opatchauto rollback /soft/35940989  -oh /oracle/app/19c/grid/OPatchauto session is initiated at Wed Dec 11 08:55:53 2024System initialization log file is /oracle/app/19c/grid/cfgtoollogs/opatchautodb/systemconfig2024-12-11_08-56-23AM.log.会话日志文件是/oracle/app/19c/grid/cfgtoollogs/opatchauto/opatchauto2024-12-11_08-56-50AM.log
此会话的 ID 为 4DBIExecuting OPatch prereq operations to verify patch applicability on home /oracle/app/19c/grid
Patch applicability verified successfully on home /oracle/app/19c/gridExecuting patch validation checks on home /oracle/app/19c/grid
Patch validation checks successfully completed on home /oracle/app/19c/gridPerforming prepatch operations on CRS - bringing down CRS service on home /oracle/app/19c/grid
Prepatch operation log file location: /oracle/app/grid/crsdata/hfcwdb66/crsconfig/crs_prepatch_apply_inplace_hfcwdb66_2024-12-11_09-00-26AM.log
CRS service brought down successfully on home /oracle/app/19c/gridStart rolling back binary patch on home /oracle/app/19c/grid
Binary patch rolled back successfully on home /oracle/app/19c/gridRunning rootadd_rdbms.sh on home /oracle/app/19c/grid
Successfully executed rootadd_rdbms.sh on home /oracle/app/19c/gridPerforming postpatch operations on CRS - starting CRS service on home /oracle/app/19c/grid[grid@hfcwdb66:/home/grid]$cd $ORACLE_HOME
[grid@hfcwdb66:/oracle/app/19c/grid]$cd OPatch
[grid@hfcwdb66:/oracle/app/19c/grid/OPatch]$opatch lspatches
30898856;TOMCAT RELEASE UPDATE 19.0.0.0.0 (30898856)
30869304;ACFS RELEASE UPDATE 19.7.0.0.0 (30869304)
30894985;OCW RELEASE UPDATE 19.7.0.0.0 (30894985)
30869156;Database Release Update : 19.7.0.0.200414 (30869156)OPatch succeeded.
[grid@hfcwdb66:/oracle/app/19c/grid/OPatch]$

相关文章:

Oracle 19c rac 补丁升级,从19.7 to19.22-集群

1. 补丁包概述 数据库环境 角色 数据库 IP地址 数据库版本 主机名 数据库名称 源端 RAC 172.30.21.166/167 19.7 hfcwdb66/hfcwdb67 hfdb 将以下补丁包上传到/soft下 上传到两个节点的soft目录下&#xff1a;p6880880_190000_Linux-x86-64.zip &#xff08;更新o…...

机器学习--Kaggle的使用

机器学习–Kaggle的使用 打开Kaggle: Your Machine Learning and Data Science Community并点击Sign In登录账号 kaggle中自带了很多的数据集 在点击Datasets之后&#xff0c;单点Notebook&#xff0c;如果有适用的数据集可以单击Copy and Edit复制其Notebook&#xff0c;之后…...

客户服务新突破,天润融通助力电动车企业实现数智化转型

近年来&#xff0c;两轮电动车成为年轻人喜爱的出行新方式&#xff0c;借着这种潮流&#xff0c;许多新兴品牌迅速发展&#xff0c;并跻身行业头部。 但问题也随之而来&#xff0c;由于业务快速发展&#xff0c;各类服务问题也开始增多。 比如天润融通服务的一家头部两轮电动…...

力扣题目 - 2931.购买物品的最大开销

题目 还需要你前往力扣官网查看详细的题目要求 地址 思路 这边需要你去力扣官网详细查看题目看了题目提供的示例 已经有了解法, 先把values转成1维数组,排序之后进行累加即可 代码 var maxSpending function (values) {let list values.flat();list.sort((a, b) > a - …...

智慧化工园区自动化在线监测,建立产业链路数字安全网

智慧化工升级国家政策推动安全风险频发 化工园区作为化工产业的核心集聚地&#xff0c;在全球经济中占据重要地位。为推动行业的高质量发展&#xff0c;国家相继发布了《“十四五”危险化学品安全生产规划方案》、《石化化工行业数字化转型实施指南》和《化工园区安全风险智能化…...

在Docker中运行MySQL的思考:挑战与解决方案

引言 在云计算和容器化技术日益普及的今天&#xff0c;Docker作为一种轻量级的容器化平台&#xff0c;已经成为开发和部署应用的首选工具之一。其提供的便携性、可扩展性和环境一致性对于无状态微服务来说无疑是巨大的福音。然而&#xff0c;并非所有应用都适合在Docker容器中…...

Linux中所有和$有关的操作

prog < file 命令在 Shell 编程中用于 输入重定向&#xff0c;它将文件的内容作为程序的输入。即&#xff0c;程序 prog 会从文件 file 中读取数据&#xff0c;而不是从标准输入&#xff08;通常是键盘&#xff09;读取数据。 基本语法&#xff1a; prog < file 解释&…...

github操作学习笔记(杂乱版)

git开源的分布式版本控制系统&#xff1a; 每次修改文件提交后&#xff0c;都会自动创建一个项目版本 查看git版本看有没有安装成功&#xff1a;git --version 把默认编辑器设置成vim&#xff1a;git config --global core.editor "vim" 1、设置昵称和邮箱&#xff…...

学习思考:一日三问(思考篇)之路由表

学习思考&#xff1a;一日三问&#xff08;思考篇&#xff09;之路由表 学了什么&#xff08;是什么&#xff09;Destination/Mask&#xff08;最终目标&#xff0c;寻路必须&#xff09;Proto&#xff08;择优可选&#xff09;Pre&#xff08;择优可选&#xff09;Cost&#x…...

多个NVR同时管理EasyNVR:设置了“按需拉流超时”配置但没反应的解决方法

视频监控这一技术在当今社会的应用已然愈发广泛&#xff0c;其影响力渗透至我们生活的方方面面。它不仅为我们带来了更为坚固的安全防线&#xff0c;还在诸多行业领域中发挥着不可替代的作用。 在广泛的应用领域中&#xff0c;NVR录像机汇聚管理EasyNVR凭借其卓越的技术实力与前…...

基于Springboot的实验室管理系统【附源码】

基于Springboot的实验室管理系统 效果如下&#xff1a; 系统登录页面 实验室信息页面 维修记录页面 轮播图管理页面 公告信息管理页面 知识库页面 实验课程页面 实验室预约页面 研究背景 在科研、教育等领域&#xff0c;实验室是进行实验教学和科学研究的重要场所。随着实验…...

【Oracle11g SQL详解】常用字符串函数:`CONCAT`、`SUBSTR`、`LENGTH`、`INSTR` 等

常用字符串函数&#xff1a;CONCAT、SUBSTR、LENGTH、INSTR 等 字符串函数在 SQL 中被广泛用于处理文本数据&#xff0c;例如拼接字符串、提取子串、查找字符位置等。Oracle 11g 提供了强大的字符串函数&#xff0c;可以简化对字符串的操作。 一、CONCAT&#xff1a;拼接字符串…...

某养老产业公司管理诊断项目成功案例纪实

某养老产业公司管理诊断项目成功案例纪实 ——从短期和长期出发&#xff0c;提供转型改革建议 【客户行业】养老行业 【问题类型】问题诊断 【客户背景】 某养老产业公司是一家主要从事养老服务为主的企业&#xff0c;主营业务包括社区养老服务、居家养老、康复训练服务等…...

自然语言处理基础及应用场景

自然语言处理定义 让计算机理解人所说的文本 语音 Imitation Game 图灵测试 行为主义 鸭子理论 自然语言处理的基本任务 词性标注&#xff1a;区分每个词名词、动词、形容词等词性命名实体的识别&#xff1a;名词的具体指代是哪一类事物共指消解&#xff1a;代词指代的是前面…...

网页爬虫技术全解析:从基础到实战

引言 在当今信息爆炸的时代&#xff0c;互联网上的数据量每天都在以惊人的速度增长。网页爬虫&#xff08;Web Scraping&#xff09;&#xff0c;作为数据采集的重要手段之一&#xff0c;已经成为数据科学家、研究人员和开发者不可或缺的工具。本文将全面解析网页爬虫技术&…...

数据仓库-查看表和数据库的信息

查询表信息 使用系统表pg_tables查询数据库所有表的信息。 SELECT * FROM pg_tables;使用gsql的\d命令查询表结构。 示例&#xff1a;先创建表customer_t1并插入数据。 CREATE TABLE customer_t1 ( c_customer_sk integer, c_customer_id char(5)…...

【JVM】JVM基础教程(四)

上一章&#xff1a;【JVM】JVM基础教程&#xff08;三&#xff09;-CSDN博客 目录 自动垃圾回收 方法区的回收 方法区回收条件 手动触发回收 堆回收 如何判断堆上的对象可以回收&#xff1f; 可以给对象引用赋值null&#xff0c;切断引用 引用计数法 循环引用缺点 查…...

深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna)

深入了解Text2SQL开源项目&#xff08;Chat2DB、SQL Chat 、Wren AI 、Vanna&#xff09; 前言1.Chat2DB2.SQL Chat3.Wren AI4.Vanna 前言 在数据驱动决策的时代&#xff0c;将自然语言查询转化为结构化查询语言&#xff08;SQL&#xff09;的能力变得日益重要。无论是小型创业…...

websocket 服务 pinia 全局配置

websocket 方法类 // stores/webSocketStore.ts import { defineStore } from "pinia";interface WebSocketStoreState {ws: WebSocket | null; // WebSocket 实例callbacks: ((message: string) > void)[]; // 消息回调函数列表connected: boolean; // 连接状态…...

基于Springboot企业oa管理系统【附源码】

基于Springboot企业oa管理系统 效果如下&#xff1a; 系统主页面 用户管理页面 公告信息管理页面 客户关系管理页面 车辆信息管理页面 工资信息管理页面 文件信息管理页面 上班考勤管理页面 研究背景 随着信息化时代的到来和企业OA管理理念的更新&#xff0c;企业面临着日益…...

Python遥感开发之地理探测器的实现

Python遥感开发之地理探测器的实现 1 地理探测器介绍2 官方软件实现3 Python代码实现 前言&#xff1a;本篇博客主要介绍使用py_geodetector库来实现地理探测器。 1 地理探测器介绍 官网链接&#xff1a;http://www.geodetector.cn/index.html 地理探测器用于测量和归因空间分…...

【HarmonyOS】 鸿蒙保存图片或视频到相册

【HarmonyOS】 鸿蒙保存图片或视频到相册 前言 鸿蒙中保存图片或者视频&#xff0c;或者其他媒体文件到设备的媒体库&#xff0c;可以是相册&#xff0c;也可以是文件管理等。共有两种方式&#xff1a; 需要应用申请受限权限&#xff0c;获取文件读写的权限&#xff08;调用…...

Apache Echarts和POI

目录 Apache ECharts 介绍 入门 绘制一个简单的图表 Apache POI 介绍 通过POI创建Excel文件并且写入文件内容 通过POI读取Excel文件中的内容 导出Excel表格 Apache ECharts 介绍 Apache ECharts 是一款基于 Javascript 的数据可视化图表库&#xff0c;提供直观&#xf…...

厦门凯酷全科技有限公司正规吗靠谱吗?

随着短视频和直播电商的迅猛发展&#xff0c;越来越多的企业开始将目光投向抖音这一平台。作为国内领先的短视频社交平台&#xff0c;抖音凭借其庞大的用户基础和强大的算法推荐系统&#xff0c;成为众多品牌拓展市场、提升销售的重要渠道。厦门凯酷全科技有限公司&#xff08;…...

WireShark 下载、安装和使用

1、下载 官网下载太慢&#xff0c;本人另外提供下载地址【下载WireShark】 2、安装 全部默认下一步即可&#xff0c;但如下图所示的这一步值得拿出来说一下。这一步是要你安装Npcap&#xff0c;但是你的电脑如果已经安装了WinPcap&#xff0c;那么可以选择不再安装Npcap。Npca…...

2025周易算命网站搭建详细方法+源码选择php环境的配置

以下是一个详细的搭建教程&#xff0c;包括网站分类、环境配置、程序设计和功能实现。 1. 环境准备 1.1 服务器选择 操作系统: Linux&#xff08;推荐使用Ubuntu或CentOS&#xff09;Web服务器: Nginx数据库: MySQLPHP版本: 7.4.x&#xff08;确保小于8.0&#xff09; 1.2 安…...

共享购模式革新登场:重构消费生态,领航商业新未来

近期&#xff0c;一种创新的商业模式——共享购&#xff0c;在电子商务领域掀起了一股热潮&#xff0c;不仅吸引了广大消费者的目光&#xff0c;也激发了商家和资本市场的浓厚兴趣。共享购模式凭借其独到的消费积分累积与转换体系&#xff0c;正在逐步重塑消费生态&#xff0c;…...

centos kafka单机离线安装kafka服务化kafka tool连接kafka

a.版本&环境 linux版本&#xff1a;centos7.6 kafka: kafka_2.12 zookeeper:zookeeper_3.6.3(之前已经安装:linux zookeeper安装并服务化-CSDN博客) java:1.8(之前已经安装) windows kafka tool: 2.1 b.kafka单机安装 1.切换目录 cd downloads/,利用rz命令&#xff0…...

QT JSON文件解析

参考博客 https://blog.csdn.net/cpp_learner/article/details/118421096 1 打开文件&#xff0c;读取全部内容 QFile file("../Json/js.json"); if (!file.open(QFile::ReadOnly | QFile::Text)) {qDebug() << "cant open error!";return; }// 读…...

[小白系列]GPU-nvidia-smi指令

‌nvidia-smi&#xff08;NVIDIA System Management Interface&#xff09;是一种命令行实用程序&#xff0c;用于监控和管理NVIDIA GPU&#xff08;图形处理器&#xff09;的状态和性能‌。它提供了一种简单而强大的方式来获取有关GPU的实时信息&#xff0c;并且可以用于诊断、…...

网站图片上传不上去是什么情况/百度电脑端网页版入口

做惯了2D的平面web设计,我突然对3D技术产生了浓厚的技术,不仅仅是因为那炫酷的效果,更是因为它用途的广泛性,随着软件编程的社会分工越来越细化,以后3D开发也有可能会从前端的大范畴里独立出来,作为一个很吃香的职业.这也不是不可能的.诚然,3D必然比web设计复杂,很多,多了一个维…...

app网站建设 - 百度/站内搜索工具

首先找根网线把路由器连接到ADSL猫的WAN口上&#xff0c;然后再用根网线把路由器连接到电脑上 &#xff0c;确保连接成功后&#xff0c;打开你电脑的IE浏览器&#xff0c;然后输入你路由器面的ip地址&#xff0c;一般情况都是192.168.1.1&#xff0c;然后回车会弹出输入用户名和…...

金华网站建设团队/虎扑体育网体育

获取【下载地址】QQ: 313596790官网 http://www.fhadmin.org/A代码编辑器&#xff0c;在线模版编辑&#xff0c;仿开发工具编辑器&#xff0c;pdf在线预览&#xff0c;文件转换编码B 集成代码生成器[正反双向](单表、主表、明细表、树形表&#xff0c;快速开发利器)快速表单构建…...

网站建设博敏/建立网站怎么搞

这样做的目的是一次遍历两个列表,一个是右列表,另一个是左列表。然后测量两点之间的角度,并将其与之前计算的角度进行比较。如果在某个时候计算的角度变大(漏斗变宽),我想用I0和新的右和左列表重新开始迭代过程。目前我没有任何输出。我认为问题出在calc()语句上,我希望def cal…...

乌鲁木齐建设银行招聘网站/独立站seo怎么做

题目 本题是2016年中国海洋大学研究生入学考试910高级程序设计程序填空题第1题。 题目: 求前n项和:1/2,2/3,3/5,5/8…(10分) 以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同进步。——来自考研路上的lwj。QQ:2394799692 一、解题思路 思路: 找规律:当前项…...

获取网站访客qq 原理/今日国内新闻大事

可以搜索微信公众号【Jet 与编程】查看更多精彩文章原文发布于自己的博客平台【http://www.jetchen.cn/analysis-hashmap/】HashMap 这个数据结构&#xff0c;不管是日常开发&#xff0c;还是求职面试&#xff0c;它始终都是所有 Java 程序员绕不开的宿命&#xff0c;所以还是决…...