向表内INSERT数据出现ORA-00600 ktspgfb-inc2错误的分析处理

业务高峰期,业务维护人员反馈某业务卡主,发来报错一看,是ORA-00600...的,心理一下就紧张起来;当前版本的ORA-00600错误,基本分为了2类,要么没啥影响;如果对业务有影响了,通常也就不是小问题。

根据报错信息,查询一通,互联网上基本没信息,MOS文档(如Doc ID 10371288.8)勉强找到一些资料,结合报错信息分析,基本确定是表的段头管理出现了问题(ORA-600 [ktspgsb-inc] can occur using ASSM segments if the segment header block's inc# is not updated, while the inc# in L2 BMB  has bumped up. 段头的分析可以参考N年前的文章ORACLE空间管理实验1:探索LMT表空间管理下数据文件头的结构及位图中区的记录方式_自动扩展块数1280-CSDN博客),导致新的INSERT时,需要分配空间时出错,无补丁。

此时可以正常查询表中数据。
基于此分析,与业务部门联系,快速确定处理方案为:
1、RENAME 业务表为BAK

2、CREATE 业务表(参照原有建表语句,确保约束、主键等无误)

3、恢复业务(主要是写入),将最近一周数据从BAK表中INSERT到新表

4、检查关联此表的视图、存储过程有效性等,检查/重建索引,以及将所有数据插入回来等后续动作。

对应日志及处理分析如下:

1、ALERT日志中的报错-搜索ORA-00600见到的不同报错

ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgfb-inc2], [2], [2], [1], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgfb-inc2], [2], [2], [1], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgfb-inc2], [2], [2], [1], [], [], [], [], [], [], [], []
ORA-00600: , : [ktspgfb-inc2], [2], [2], [1], [], [], [], [], [], [], [], []

2、对应的日志详情

Mon Apr 15 10:06:57 2024
Sweep [inc][721244]: completed
Sweep [inc][721164]: completed
Sweep [inc][720700]: completed
Sweep [inc][720468]: completed
Sweep [inc2][721244]: completed
Sweep [inc2][721164]: completed
Sweep [inc2][720700]: completed
Sweep [inc2][720468]: completed
Mon Apr 15 10:07:29 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_329700.trc  (incident=720980):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Incident details in: /u01/app/oracle/diag/rdbms/TESTpri/TEST/incident/incdir_720980/TEST_ora_329700_i720980.trc
Mon Apr 15 10:07:30 2024
Dumping diagnostic data in directory=[cdmp_20240415100730], requested by (instance=1, osid=329700), summary=[incident=720980].
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:07:57 2024
Sweep [inc][720980]: completed
Sweep [inc2][720980]: completed
Mon Apr 15 10:09:44 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_329989.trc  (incident=720748):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:09:45 2024
Sweep [inc][720748]: completed
Mon Apr 15 10:10:41 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330143.trc  (incident=722364):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:10:45 2024
Sweep [inc][722364]: completed
Mon Apr 15 10:10:46 2024
XDB installed.
XDB initialized.
Mon Apr 15 10:10:53 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_329453.trc  (incident=720692):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:12 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330169.trc  (incident=722420):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:12 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330250.trc  (incident=722540):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:20 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330195.trc  (incident=720876):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:24 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330362.trc  (incident=722652):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:26 2024
Thread 1 cannot allocate new log, sequence 353931
Private strand flush not completeCurrent log# 2 seq# 353930 mem# 0: /oradata/TEST/redo02.log
Thread 1 advanced to log sequence 353931 (LGWR switch)Current log# 3 seq# 353931 mem# 0: /oradata/TEST/redo03.log
Mon Apr 15 10:11:29 2024
LNS: Standby redo logfile selected for thread 1 sequence 353931 for destination LOG_ARCHIVE_DEST_2
Mon Apr 15 10:11:29 2024
LNS: Standby redo logfile selected for thread 1 sequence 353931 for destination LOG_ARCHIVE_DEST_3
Mon Apr 15 10:11:29 2024
Archived Log entry 1059327 added for thread 1 sequence 353930 ID 0xaaa6cf99 dest 1:
Mon Apr 15 10:11:30 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330049.trc  (incident=722092):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:40 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330366.trc  (incident=720877):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:45 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330404.trc  (incident=722188):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:45 2024
Sweep [inc][722652]: completed
Sweep [inc][722540]: completed
Sweep [inc][722420]: completed
Sweep [inc][722188]: completed
Sweep [inc][722092]: completed
Sweep [inc][720877]: completed
Sweep [inc][720876]: completed
Sweep [inc][720692]: completed
Mon Apr 15 10:11:48 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330319.trc  (incident=722380):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:50 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330500.trc  (incident=722244):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:52 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330516.trc  (incident=722189):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:55 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_329721.trc  (incident=720981):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:11:56 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330392.trc  (incident=722452):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:12:04 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330548.trc  (incident=720982):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Apr 15 10:12:10 2024
Errors in file /u01/app/oracle/diag/rdbms/TESTpri/TEST/trace/TEST_ora_330538.trc  (incident=722236):
ORA-00600: , : [ktspgsb-inc], [2], [1], [], [], [], [], [], [], [], [], []
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.

3、查看对应的ORA-00600错误的TRACE日志

*** 2024-04-15 09:53:00.456
*** SESSION ID:(122.64323) 2024-04-15 09:53:00.456
*** CLIENT ID:() 2024-04-15 09:53:00.456
*** SERVICE NAME:(htbase) 2024-04-15 09:53:00.456
*** MODULE NAME:(oracle@db01 (TNS V1-V3)) 2024-04-15 09:53:00.456
*** ACTION NAME:() 2024-04-15 09:53:00.456Dump continued from file: /u01/app/oracle/diag/rdbms/htbasepri/htbase/trace/htbase_ora_302150.trc
ORA-00600: , : [ktspgfb-inc2], [2], [2], [1], [], [], [], [], [], [], [], []========= Dump for incident 684630 (ORA 600 [ktspgfb-inc2]) ========*** 2024-04-15 09:53:00.457
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
----- Current SQL Statement for this session (sql_id=0wb6qnd984qcf) -----
UPDATE "OUTPORD"."TEST" "A1" SET "EXAM_STATUS" = 'RD',………………)--------------------- Binary Stack Dump ---------------------========== FRAME [1] (skdstdst()+41 -> kgdsdst()) ==========
defined by frame pointers 0x7ffca67962d0  and 0x7ffca67962c0
CALL TYPE: call   ERROR SIGNALED: no   COMPONENT: (null)
RDI 0000000000000000 RSI 0000000000000000 RDX 00007FFCA6791480 

4、该问题的 CALL STACK,用来对比BUG

----- Call Stack Trace -----
calling              call     entry                argument values in hex      
location             type     point                (? means dubious value)     
-------------------- -------- -------------------- ----------------------------
skdstdst()+41        call     kgdsdst()            000000000 ? 000000000 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
ksedst1()+103        call     skdstdst()           000000000 ? 000000000 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
ksedst()+39          call     ksedst1()            000000000 ? 000000001 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
dbkedDefDump()+2746  call     ksedst()             000000000 ? 000000001 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
ksedmp()+41          call     dbkedDefDump()       000000003 ? 000000002 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
ksfdmp()+69          call     ksedmp()             000000003 ? 000000002 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
dbgexPhaseII()+1764  call     ksfdmp()             000000003 ? 000000002 ?7FFCA6791480 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
dbgexProcessError()  call     dbgexPhaseII()       7F7C49A18738 ? 7F7C497F5898 ?
+2680                                              7FFCA679AAD8 ? 7FFCA6791558 ?7FFCA6796000 ? 000000002 ?
dbgeExecuteForError  call     dbgexProcessError()  7F7C49A18738 ? 7F7C497F5898 ?
()+88                                              000000001 ? 000000000 ?7FFCA6796000 ? 000000002 ?
dbgePostErrorKGE()+  call     dbgeExecuteForError  7F7C49A18738 ? 7F7C497F5898 ?
2136                          ()                   000000001 ? 000000001 ?000000000 ? 000000002 ?
dbkePostKGE_kgsf()+  call     dbgePostErrorKGE()   00C11CD40 ? 7F7C495F2430 ?
71                                                 000000258 ? 000000001 ?000000000 ? 000000002 ?
kgeadse()+390        call     dbkePostKGE_kgsf()   00C11CD40 ? 7F7C495F2430 ?000000258 ? 000000001 ?000000000 ? 000000002 ?
kgerinv_internal()+  call     kgeadse()            00C11CD40 ? 7F7C495F2430 ?
50                                                 000000258 ? 000000001 ?000000000 ? 000000002 ?
kgerinv()+38         call     kgerinv_internal()   00C11CD40 ? 7F7C495F2430 ?000000258 ? 000000001 ?000000000 ? 000000002 ?
kgeasnmierr()+148    call     kgerinv()            00C11CD40 ? 7F7C495F2430 ?000000258 ? 000000001 ?000000000 ? 000000002 ?
ktspgfblk3()+1756    call     kgeasnmierr()        00C11CD40 ? 7F7C495F2430 ?000000258 ? 000000001 ?000000000 ? 000000002 ?
ktspstchg_main()+15  call     ktspgfblk3()         00C11CD40 ? 7F7C495F2430 ?
7                                                  008F2BF80 ? 000000000 ?000000002 ? 8AEDB0014 ?
kddchg()+2546        call     ktspstchg_main()     1DC7DB06D0 ? 7F7C49623B70 ?000000001 ? 000000001 ?000000000 ? 8AEDB0014 ?
kduovw()+3408        call     kddchg()             7F7C49623B20 ? 2041BF1508 ?2041BF1510 ? 000000001 ?000000000 ? 8AEDB0014 ?
kduurp()+2378        call     kduovw()             7F7C49623B20 ? 2041BF1508 ?2041BF1510 ? 000000001 ?000000000 ? 1DC7DB0CF0 ?
kdusru()+1037        call     kduurp()             7F7C49623B20 ? 2041BF1508 ?2041BF1510 ? 000000001 ?000000000 ? 1DC7DB0CF0 ?
kauupd()+412         call     kdusru()             7F7C49623B20 ? 2041BF1508 ?7F7C49623B20 ? 000000000 ?000000000 ? 1DC7DB0CF0 ?
updrow()+2167        call     kauupd()             7F7C49626C48 ? 2041BF1508 ?7F7C49623B20 ? 000000000 ?000000000 ? 1DC7DB0CF0 ?
qerupFetch()+860     call     updrow()             7F7C49626C48 ? 2041BF1508 ?7F7C49623B20 ? 000000000 ?000000000 ? 1DC7DB0CF0 ?
updaul()+1378        call     qerupFetch()         1D662B3C38 ? 7F7C4962B358 ?7F7C49623B20 ? 000000000 ?000000000 ? 1DC7DB0CF0 ?
updThreePhaseExe()+  call     updaul()             1D662B3C38 ? 7F7C4962B358 ?
318                                                7F7C49623B20 ? 000000000 ?000000000 ? 1DC7DB0CF0 ?
updexe()+638         call     updThreePhaseExe()   1C07AE0940 ? 000000000 ?7F7C49623B20 ? 7FFCA67A0BE8 ?952284F00000001 ?1DC7DB0CF0 ?
opiexe()+10378       call     updexe()             1C07AE0940 ? 7FFCA67A1B90 ?7F7C49623B20 ? 7FFCA67A0BE8 ?952284F00000001 ?1DC7DB0CF0 ?
kpoal8()+2380        call     opiexe()             000000049 ? 000000003 ?7F7C49623B20 ? 7FFCA67A0BE8 ?952284F00000001 ?1DC7DB0CF0 ?
opiodr()+917         call     kpoal8()             00000005E ? 000000003 ?7F7C49623B20 ? 7FFCA67A0BE8 ?952284F00000001 ?1DC7DB0CF0 ?
ttcpip()+2183        call     opiodr()             00000005E ? 00000001C ?7FFCA67A5720 ? 7FFCA67A0BE8 ?952284F00000001 ?1DC7DB0CF0 ?
opitsk()+1710        call     ttcpip()             00C13A990 ? 0099DF070 ?7FFCA67A5720 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
opiino()+969         call     opitsk()             00C13A998 ? 000000000 ?7FFCA67A5720 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
opiodr()+917         call     opiino()             00000003C ? 000000004 ?7FFCA67A6F18 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
opidrv()+570         call     opiodr()             00000003C ? 000000004 ?7FFCA67A6F18 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
sou2o()+103          call     opidrv()             00000003C ? 000000004 ?7FFCA67A6F18 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
opimai_real()+133    call     sou2o()              7FFCA67A6EF0 ? 00000003C ?000000004 ? 7FFCA67A6F18 ?7FFCA67A5178 ? 7FFCA67A571C ?
ssthrdmain()+265     call     opimai_real()        000000002 ? 7FFCA67A70E0 ?000000004 ? 7FFCA67A6F18 ?7FFCA67A5178 ? 7FFCA67A571C ?
main()+201           call     ssthrdmain()         000000002 ? 7FFCA67A70E0 ?000000001 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
__libc_start_main()  call     main()               000000002 ? 7FFCA67A7288 ?
+253                                               000000001 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?
_start()+41          call     __libc_start_main()  000A2AA94 ? 000000002 ?7FFCA67A7278 ? 000000000 ?7FFCA67A5178 ? 7FFCA67A571C ?

5、官方文档中的建议(重建表)

ORA-600 [ktspgsb-inc] can occur using ASSM segments if the
segment header block's inc# is not updated, while the inc# in L2 BMB 
has bumped up. 

 As a workaround, you can drop and rebuild the table when the issue is first found.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/3270.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

强化学习的重要概念:环境、模型、策略和它们的关系

在强化学习中,环境(Environment)、模型(Model)和策略(Policy)是三个核心概念,它们之间的关系可以描述如下: 环境(Environment): 环境是…

<component> <slot> <template>三者之间的区别与使用

学习目标: 目标 1、了解组件的含义 2、了解 的含义及用法 3、了解 的含义及用法 4、了解 的含义及用法 学习内容: 内容: 什么是组件? 组件的出现,就是为了拆分Vue实例的代码量,能够让我们以不同的组件&am…

deque的插入和删除

函数原型 两端插入操作 push_back(elem) //向容器尾部添加一个数据push_front(elem) //向容器头部插入一个数据pop_back() //删除容器最后一个数据 pop_front() //删除第一个容器第一个数据 …

点云数据处理的库

PCL、Open3D和OpenGL都是用于点云数据处理的常用库,它们各有优劣,具体如下: PCL(Point Cloud Library) PCL是一个非常流行的开源点云数据处理库,它支持从各种传感器(如激光雷达、Kinect&#xf…

Python实战 | 只需“4步”入门网络爬虫(小白也会)

文章目录 Python实战 | 只需“4步”入门网络爬虫(小白也会)1:确定目标网站和数据2:安装必要的库3:编写爬虫代码4.目标网站的URL5.发送HTTP请求并获取响应内容6.使用BeautifulSoup解析HTML内容7.查找包含新闻标题和链接…

【golang学习之旅】Go 的基本数据类型

系列文章 【golang学习之旅】报错:a declared but not used 目录 系列文章总览布尔型(bool)字符串型(string)整数型(int、uint、byte、rune)浮点型(float32、float64)复…

【C++】——类与对象引入和认识

创作不易,多多支持! 前言 有了上一篇博客的基础以后,就正式进入C类和对象的领域了,如果看完本篇文章对你有用,还请多多支持!!😘😘 一 面向过程和面向对象 1.面向过程 …

js的includes函数

在JavaScript中,includes() 是一个数组(Array)和字符串(String)对象的方法,用于确定一个数组是否包含一个特定的值,或者一个字符串是否包含一个特定的子串。如果找到该值或子串,则返…

MySql on duplicate key update

"ON DUPLICATE KEY UPDATE"是MySQL的语法,当尝试插入的行导致一个duplicate key错误(如果该行中存在一个unique索引或primary key,并且该索引或primary key在表中已经存在),则执行UPDATE。 使用基本的SQL语…

单链表实现通讯录

不过多赘述了 顺序表的增删查改-CSDN博客https://blog.csdn.net/bkmoo/article/details/137566495?spm1001.2014.3001.5502 使用顺序表实现通讯录-CSDN博客https://blog.csdn.net/bkmoo/article/details/137676561?spm1001.2014.3001.5502这里没有使用文件操作只是简单的使…

全程免费的ssl证书申请——七步实现网站https

全程免费的ssl证书申请步骤如下: 1 准备工作 首先确定好需要的证书类型,如单域名证书、通配符证书和多域名证书,准备好需要安装证书的域名。 2 选择CA 选择提供免费证书的服务商——JoySSL,并访问其官方网站,创建一…

3d软件哪个适合新手学?3D动画渲染怎么好

在不同的行业领域,3D建模和动画的需求各异,因此所需的3D软件工具也会有所不同。对于刚开始接触3D设计的新手来说,软件的易操作性、丰富的学习资源以及与自己专业领域相关的功能是选择时的重要考虑因素。以下是几款适合初学者入门的3D软件推荐…

代码随想录训练营Day 32|Python|Leetcode|● 738.单调递增的数字

738.单调递增的数字 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时&#xff0c;我们称这个整数是单调递增的。 给定一个整数 n &#xff0c;返回 小于或等于 n 的最大数字&#xff0c;且数字呈 单调递增 。 解题思路&#xff1a; 对于所给数字进行str()并从后向前…

【智能算法应用】灰狼算法(GWO)在低照度图像增强中的应用

目录 1.算法原理2.数学模型3.结果展示4.参考文献 1.算法原理 【智能算法】灰狼算法&#xff08;GWO&#xff09;原理及实现 2.数学模型 对于低照度图像的增强方式可以采用非线性变换函数来对图像的灰度值进行变化&#xff0c;对于不同环境下质量不同的图像&#xff0c;可以将…

YOLOv8+PyQt5输电线路缺陷检测(目前最全面的类别检测,可以从图像、视频和摄像头三种路径检测)

1.效果视频&#xff1a;YOLOv8PyQt5输电线路缺陷检测&#xff08;目前最全面的类别检测&#xff0c;可以从图像、视频和摄像头三种路径检测&#xff09;_哔哩哔哩_bilibili 资源包含可视化的输电线路缺陷检测系统&#xff0c;可识别图片和视频当中出现的五类常见的输电线路缺陷…

python:pyqt5案例(简易浏览器)

1、上接pyqt5基础https://blog.csdn.net/weixin_73011353/article/details/138051734https://blog.csdn.net/weixin_73011353/article/details/138051734 2、基本模块 # 定义一个名为BrowserWindow的类&#xff0c;继承自QMainWindow class BrowserWindow(QMainWindow):def _…

美国电子电器产品FCC认证讲解

美国FCC认证简介 FCC全称是Federal Communications Commission&#xff0c;中文为美国联邦通信委员会。于1934年由CommunicationACT建立&#xff0c;是美国政府的一个独立机构&#xff0c;直接对国会负责。FCC通过控制无线电广播、电视、电信、卫星和电缆来协调和国际的通信。涉…

JS中跳转传参的几种方法

在JavaScript中&#xff0c;页面跳转并传递参数主要有以下几种方法&#xff1a; 1. 使用URL的查询字符串 这是最常见的方法&#xff0c;你可以在URL后面添加查询字符串来传递参数。查询字符串以?开始&#xff0c;参数之间用&分隔。 例如&#xff1a; window.location.…

Axure琐碎细节

文章目录 琐碎细节注释预览编写原型图的时候可以把颜色改为灰色标尺竖直文字左对齐Axure中的文字怎么添加元件层级问题如何找到各种各样的形状&#xff0c;比如三角形了 五角星了 十字架了给按钮设置简单的交互动作通过锁来等比例缩放 琐碎细节 注释 有时候我们需要给我们的元…

Vue-admin-template关于TagView缓存问题

方式1&#xff1a;采用原有的 <template><section class"app-main"><transition name"fade-transform" mode"out-in"><keep-alive :include"cachedViews"><router-view :key"key" /></ke…