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

Oracle Database 23ai 中的DBMS_HCHECK

在 Oracle 23ai 中,DBMS_HCHECK 包允许我们检查数据库中已知的数据字典问题。  

几年前,Oracle 发布了 hcheck.sql 脚本(文档 ID 136697.1)来检查数据库中已知的数据字典问题。 DBMS_HCHECK 包意味着我们不再需要下载 hcheck.sql 脚本来执行此操作。需要 hcheck.sql 脚本可以留言。

存储过程中的参数,FULL 程序进行详尽的检查,而 CRITICAL 选项仅专注于最基本的检查,使其执行速度更快。这些过程最有价值的方面之一是它们不仅能够识别问题,而且还能够修复问题(如果您设置了 Repair= TRUE 参数)。

关于结果的说明

执行结果报告如下:  

  • CRITICAL:需要立即关注并修复。
  • FAIL:需要解决的高优先级问题。
  • WARN:不紧急但值得解决。
  • PASS:未检测到问题。

注意:在 Oracle 23c 中,此包称为 DBMS_HCHECK,而在早期版本(如 Oracle 23.3ai)中,它称为 DBMS_DICTIONARY_CHECK。


以下实验环境为Oracle 23ai,采用的DBMS_DICTIONARY_CHECK。

一、使用脚本检查数据字典

1.1 检查cdb

SQL> spool hcheck.log
SQL> @hcheck
HCheck Version 04AUG23 on 19-DEC-2024 16:20:29
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 1 Container: CDB$ROOTCatalog       Fixed
Procedure Name                     Version    Vs Release    Timestamp
Result
------------------------------ ... ---------- -- ---------- --------------
------
.- LobNotInObj                 ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- MissingOIDOnObjCol          ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- SourceNotInObj              ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- OversizedFiles              ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- PoorDefaultStorage          ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- PoorStorage                 ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- TabPartCountMismatch        ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- OrphanedTabComPart          ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- MissingSum$                 ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- MissingDir$                 ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- DuplicateDataobj            ... 2300000000 <=  *All Rel* 12/19 16:20:29 PASS
.- ObjSynMissing               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- ObjSeqMissing               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedUndo                ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedIndex               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedIndexPartition      ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedIndexSubPartition   ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedTable               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedTablePartition      ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedTableSubPartition   ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- MissingPartCol              ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedSeg$                ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedIndPartObj#         ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- DuplicateBlockUse           ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- FetUet                      ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- Uet0Check                   ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- SeglessUET                  ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadInd$                     ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadTab$                     ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadIcolDepCnt               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- ObjIndDobj                  ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- TrgAfterUpgrade             ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- ObjType0                    ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadOwner                    ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- StmtAuditOnCommit           ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadPublicObjects            ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadSegFreelist              ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadDepends                  ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- CheckDual                   ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- ObjectNames                 ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- ChkIotTs                    ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- NoSegmentIndex              ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- BadNextObject               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- DroppedROTS                 ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- FilBlkZero                  ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- DbmsSchemaCopy              ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanedIdnseqObj           ... 2300000000 >  1201000000 12/19 16:20:30 PASS
.- OrphanedIdnseqSeq           ... 2300000000 >  1201000000 12/19 16:20:30 PASS
.- OrphanedObjError            ... 2300000000 >  1102000000 12/19 16:20:30 PASS
.- ObjNotLob                   ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- MaxControlfSeq              ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- SegNotInDeferredStg         ... 2300000000 >  1102000000 12/19 16:20:30 PASS
.- SystemNotRfile1             ... 2300000000 >   902000000 12/19 16:20:30 PASS
.- DictOwnNonDefaultSYSTEM     ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- OrphanTrigger               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
.- ObjNotTrigger               ... 2300000000 <=  *All Rel* 12/19 16:20:30 PASS
---------------------------------------
19-DEC-2024 16:20:30  Elapsed: 1 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)
Note that hcheck has been run on CDB$ROOT, consider to run it in each PDBPL/SQL procedure successfully completed.Statement processed.Complete output is in trace file:
/opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11626_HCHECK.trcSQL> spool off

1.2 检查pdb

conn sys/oracle@pdb1 as sysdbaspool hcheck.log@hcheck
HCheck Version 04AUG23 on 19-DEC-2024 16:23:01
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 3 Container: FREEPDB1Catalog       Fixed
Procedure Name                     Version    Vs Release    Timestamp
Result
------------------------------ ... ---------- -- ---------- --------------
------
.- LobNotInObj                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- MissingOIDOnObjCol          ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- SourceNotInObj              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OversizedFiles              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- PoorDefaultStorage          ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- PoorStorage                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- TabPartCountMismatch        ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedTabComPart          ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- MissingSum$                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- MissingDir$                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- DuplicateDataobj            ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- ObjSynMissing               ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- ObjSeqMissing               ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedUndo                ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedIndex               ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedIndexPartition      ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedIndexSubPartition   ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedTable               ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedTablePartition      ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedTableSubPartition   ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- MissingPartCol              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedSeg$                ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedIndPartObj#         ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- DuplicateBlockUse           ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- FetUet                      ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- Uet0Check                   ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- SeglessUET                  ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadInd$                     ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadTab$                     ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadIcolDepCnt               ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- ObjIndDobj                  ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- TrgAfterUpgrade             ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- ObjType0                    ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadOwner                    ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- StmtAuditOnCommit           ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadPublicObjects            ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadSegFreelist              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadDepends                  ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- CheckDual                   ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- ObjectNames                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- ChkIotTs                    ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- NoSegmentIndex              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- BadNextObject               ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- DroppedROTS                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- FilBlkZero                  ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- DbmsSchemaCopy              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- OrphanedIdnseqObj           ... 2300000000 >  1201000000 12/19 16:23:02 PASS
.- OrphanedIdnseqSeq           ... 2300000000 >  1201000000 12/19 16:23:02 PASS
.- OrphanedObjError            ... 2300000000 >  1102000000 12/19 16:23:02 PASS
.- ObjNotLob                   ... 2300000000 <=  *All Rel* 12/19 16:23:02 PASS
.- MaxControlfSeq              ... 2300000000 <=  *All Rel* 12/19 16:23:02 PASS
.- SegNotInDeferredStg         ... 2300000000 >  1102000000 12/19 16:23:02 PASS
.- SystemNotRfile1             ... 2300000000 >   902000000 12/19 16:23:02 PASS
.- DictOwnNonDefaultSYSTEM     ... 2300000000 <=  *All Rel* 12/19 16:23:02 PASS
.- OrphanTrigger               ... 2300000000 <=  *All Rel* 12/19 16:23:02 PASS
.- ObjNotTrigger               ... 2300000000 <=  *All Rel* 12/19 16:23:02 PASS
---------------------------------------
19-DEC-2024 16:23:02  Elapsed: 1 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)PL/SQL procedure successfully completed.Statement processed.Complete output is in trace file:
/opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11647_HCHECK.trcspool off

二、DBMS_DICTIONARY_CHECK.FULL

FULL 过程执行所有检查并在屏幕上显示输出,并将其写入跟踪文件。我们可以针对根容器或可插拨数据库运行它。

以pdb1为示例

conn sys/oracle@pdb1 as sysdbaspool hcheck.logexec dbms_dictionary_check.full
HCheck Version 04AUG23 on 19-DEC-2024 16:23:01
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 3 Container: FREEPDB1Catalog       Fixed
Procedure Name                     Version    Vs Release    Timestamp
Result
------------------------------ ... ---------- -- ---------- --------------
------
.- LobNotInObj                 ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- MissingOIDOnObjCol          ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
.- SourceNotInObj              ... 2300000000 <=  *All Rel* 12/19 16:23:01 PASS
。。省略
---------------------------------------
19-DEC-2024 16:23:02  Elapsed: 1 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)PL/SQL procedure successfully completed.Statement processed.Complete output is in trace file:
/opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11647_HCHECK.trcspool off

三、DBMS_DICTIONARY_CHECK.CRITICAL

CRITICAL 过程仅执行关键检查并在屏幕上显示输出,并将其写入跟踪文件。我们可以针对根容器或可插拨数据库运行它。

以pdb1为示例

conn sys/oracle@pdb1 as sysdbaSQL> set serveroutput on size unlimited
SQL> exec DBMS_DICTIONARY_CHECK.CRITICAL;
dbms_dictionary_check on 19-DEC-2024 16:38:52
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 3 Container: FREEPDB1
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11647_DICTCHECK.trcCatalog       Fixed
Procedure Name                     Version    Vs Release    Timestamp
Result
------------------------------ ... ---------- -- ---------- --------------
------
.- UndoSeg                     ... 2300000000 <=  *All Rel* 12/19 16:38:52 PASS
.- MaxControlfSeq              ... 2300000000 <=  *All Rel* 12/19 16:38:52 PASS
.- InvalidTSMaxSCN             ... 2300000000 >  1202000000 12/19 16:38:52 PASS
.- SysSequences                ... 2300000000 <=  *All Rel* 12/19 16:38:52 PASS
---------------------------------------
19-DEC-2024 16:38:52  Elapsed: 0 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11647_DICTCHECK.trcPL/SQL procedure successfully completed.
SQL>

四、DBMS_DICTIONARY_CHECK.FULL(REPAIR=TRUE)

下面介绍了如何修复数据字典的问题或不一致。

EXECUTE dbms_dictionary_check.full(repair=>TRUE)
dbms_dictionary_check on 19-DEC-2024 16:40:01
----------------------------------------------
Catalog Version 23.0.0.0.0 (2300000000)
db_name: FREE
Is CDB?: YES CON_ID: 3 Container: FREEPDB1
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11647_DICTCHECK.trcCatalog       Fixed
Procedure Name                     Version    Vs Release    Timestamp
Result
------------------------------ ... ---------- -- ---------- --------------
------
.- OIDOnObjCol                 ... 2300000000 <=  *All Rel* 12/19 16:40:01 PASS
.- LobNotInObj                 ... 2300000000 <=  *All Rel* 12/19 16:40:01 PASS
。。省略
.- ObjLogicalConstraints       ... 2300000000 <=  *All Rel* 12/19 16:40:01 PASS
.- SysSequences                ... 2300000000 <=  *All Rel* 12/19 16:40:01 PASS
.- ValidateFile                ... 2300000000 <=  *All Rel* 12/19 16:40:01 PASS
---------------------------------------
19-DEC-2024 16:40:01  Elapsed: 0 secs
---------------------------------------
Found 0 potential problem(s) and 0 warning(s)
Trace File: /opt/oracle/diag/rdbms/free/FREE/trace/FREE_ora_11647_DICTCHECK.trcPL/SQL procedure successfully completed.

相关文章:

Oracle Database 23ai 中的DBMS_HCHECK

在 Oracle 23ai 中&#xff0c;DBMS_HCHECK 包允许我们检查数据库中已知的数据字典问题。 几年前&#xff0c;Oracle 发布了 hcheck.sql 脚本&#xff08;文档 ID 136697.1&#xff09;来检查数据库中已知的数据字典问题。 DBMS_HCHECK 包意味着我们不再需要下载 hcheck.sql…...

如何利用AWS监听存储桶并上传到tg bot

业务描述&#xff1a; 需要监听aws的存储中的最新消息&#xff0c;发送新的消息推送到指定tg的频道。 主要流程&#xff1a; 1.上传消息到s3存储桶&#xff08;不做具体描述&#xff09; 2.通过aws的lambda监听s3存储桶的最新消息&#xff08;txt文件&#xff09; 3.将txt文件…...

STM32 SPI读取SD卡

七个响应类型&#xff1a; R1 Response (Normal Response): R1响应是最基本的响应&#xff0c;包含一个字节的状态位&#xff0c;用于指示命令是否成功执行。常用。最高位为0。最低位为1表示是空闲状态。其他位是各种错误提示。 R1b Response (Normal with Busy): 类似于R1&a…...

TANGO与LabVIEW控制系统集成

TANGO 是一个开源的设备控制和数据采集框架&#xff0c;主要用于管理实验室设备、自动化系统和工业设备。它为不同类型的硬件提供统一的控制接口&#xff0c;并支持设备之间的通信&#xff0c;广泛应用于粒子加速器、同步辐射光源、实验室自动化和工业控制等领域。 1. TANGO的核…...

eth_type_trans 函数

eth_type_trans 是 Linux 内核网络子系统中的一个函数,它主要用于确定接收到的以太网数据包(Ethernet frame)的协议类型,并设置相应的 sk_buff 结构体的协议字段。以下是关于 eth_type_trans 的详细解释: 功能 eth_type_trans 函数的主要功能是根据以太网数据包的目的 M…...

派克汉尼汾推出新的快换接头产品系列,扩展热管理解决方案

近期&#xff0c;运动与控制技术领域的先行者——派克汉尼汾宣布推出四个具有开创性的热管理解决方案——NSAC、NSEC和NSIC系列盲插式快换接头以及NSSC螺纹连接快换接头。这些创新产品旨在满足电子冷却、电池制造、信息技术、能源管理、工程机械和运输等行业复杂的热管理需求。…...

uniapp 前端解决精度丢失的问题 (后端返回分布式id)

原因&#xff1a; 后端使用分布式id, id为19位数&#xff0c;导致精度丢失 &#xff0c;前端解决方法 这个是通过浏览器请求回来的数据&#xff0c;这个时候id 数据已经丢失了&#xff0c;在数据库查询不到&#xff0c;在调获详情接口的时候会有问题 实际的&#xff1a; 解决…...

C语言:指针4(常量指针和指针常量及动态内存分配)

常量指针与指针常量 常量&#xff1a;分为字面量和只读常量&#xff0c;字面量就是我们平时直接操作的量&#xff1a; printf("%d\n",12);/printf("%s\n","hello");只读常量使用关键字 const 修饰&#xff0c;凡是被这个关键字修饰 的变量&…...

Win11提示fveapi.dll丢失是什么原因?fveapi.dll丢失怎么办?

一、fveapi.dll丢失的成因与影响 成因&#xff1a; 系统更新不完整&#xff1a;Win11系统在更新过程中&#xff0c;如果某个环节出现问题&#xff0c;可能会导致fveapi.dll等系统文件未能正确更新或安装。软件冲突&#xff1a;某些第三方软件可能与系统文件发生冲突&#xff…...

台球助教平台系统开发APP和小程序信息收藏功能需求解析(第十二章)

以下是开发台球助教系统客户端&#xff08;APP&#xff0c;小程序&#xff0c;H5&#xff09;几端的信息收藏功能的详细需求和功能说明&#xff0c;内容比较详细&#xff0c;可以说是一个教科书式的详细说明了&#xff0c;这套需求说明不仅仅用在我们的台球助教系统程序上&…...

如何设计 Vue 3 组件库:高效的组件化开发方法

如何设计 Vue 3 组件库&#xff1a;高效的组件化开发方法 &#x1f4d6; 前言 随着前端技术的不断发展&#xff0c;Vue.js 已成为现代化 Web 应用开发的主流框架之一。Vue 3 引入了诸多改进&#xff0c;尤其是组合式 API&#xff0c;使得 Vue 在开发大型项目时&#xff0c;能够…...

第八节、Bresenham直线插补运动【51单片机-L298N-步进电机教程】

摘要&#xff1a;前面章节主要介绍单个电机控制&#xff0c;本节内容介绍两个电机完成直线插补运动 一、 Bresenham直线算法介绍 Bresenham直线算法由Jack Elton Bresenham于1962年在IBM开发&#xff0c;最初用于计算机显示直线&#xff0c;它确定应该选择的n维光栅的点&#…...

一个从oracle使用spool导出数据到kadb的脚本

1. dump_data.sh调用sql_dump.sh导出数据 2. load_data.sh将导出的数据加载至KADB 1. dump_data.sh #!/bin/bash begin_time$(date %Y%m%d -d -1 day) end_time$(date %Y%m%d) echo "数据导出日期:"$begin_time echo "数据导出日期:"$begin_time >>…...

【STM32】GPIO口以及EXTI外部中断

个人主页~ 有关结构体的知识在这~ 有关枚举的知识在这~ GPIO口以及EXTI外部中断 GPIO一、简介二、基本结构三、输入输出模式1、输入模式&#xff08;1&#xff09;上拉输入&#xff08;2&#xff09;下拉输入&#xff08;3&#xff09;浮空输入&#xff08;4&#xff09;模拟输…...

Confluent Cloud Kafka 可观测性最佳实践

Confluent Cloud 介绍 Confluent Cloud 是一个完全托管的 Apache Kafka 服务&#xff0c;提供高可用性和可扩展性&#xff0c;旨在简化数据流处理和实时数据集成。用户可以轻松创建和管理 Kafka 集群&#xff0c;而无需担心基础设施的维护和管理。Confluent Cloud 支持多种数据…...

【LeetCode每日一题】——415.字符串相加

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时空频度】九【代码实现】十【提交结果】 一【题目类别】 字符串 二【题目难度】 简单 三【题目编号】 415.字符串相加 四【题目描述】 给定两个字符…...

linux---使用定时任务同步时间

首先&#xff0c;确保你的系统上安装了ntpdate工具&#xff0c;它用于从NTP服务器获取并设置系统时间。如果你的系统上没有安装&#xff0c;你可以通过包管理器进行安装 安装ntpdate yum install -y ntpdate设置定时任务 crontab -e在文件中添加下面内容 #每5分钟同步一次时间 …...

Windows、CentOS环境下搭建自己的版本管理资料库:GitBlit

可以搭建属于公司内部或者个人的Git服务器&#xff0c;方便程序代码及文档版本管理。 官网&#xff1a;http://www.gitblit.com/ Windows环境下安装 提前已经安装好了JDK。 官网下载Windows版的GitBlit。 将zip包解压到自己想要放置的文件夹下。 建立版本库路径&#xff0c…...

KNN分类算法 HNUST【数据分析技术】(2025)

1.理论知识 KNN&#xff08;K-Nearest Neighbor&#xff09;算法是机器学习算法中最基础、最简单的算法之一。它既能用于分类&#xff0c;也能用于回归。KNN通过测量不同特征值之间的距离来进行分类。 KNN算法的思想&#xff1a; 对于任意n维输入向量&#xff0c;分别对应于特征…...

AI Agent开源框架汇总(持续更新)

文章目录 AI Agent开源框架汇总什么是AI Agent为什么需要智能体(Agent)Web3 AI Agent使用场景框架分类低代码(No-Code/Low-Code)框架基础框架代码框架Multi-Agent 框架 / 架构热门开源框架PhidataRigai16z的AI Agent框架ElizaLangChain和phidata对比OpenAI SwarmAI Agent开…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook&#xff0c;用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途&#xff0c;下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

C++八股 —— 单例模式

文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全&#xff08;Thread Safety&#xff09; 线程安全是指在多线程环境下&#xff0c;某个函数、类或代码片段能够被多个线程同时调用时&#xff0c;仍能保证数据的一致性和逻辑的正确性&#xf…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用

文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么&#xff1f;1.1.2 感知机的工作原理 1.2 感知机的简单应用&#xff1a;基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...