标签云
asm恢复 bbed bootstrap$ dul kcbzib_kcrsds_1 kccpb_sanity_check_2 kcratr_nab_less_than_odr MySQL恢复 obet ORA-00312 ORA-00704 ORA-00742 ORA-01110 ORA-01200 ORA-01555 ORA-01578 ORA-01595 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-600 kcratr_nab_less_than_odr ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 ORACLE恢复 Oracle 恢复 ORACLE数据库恢复 oracle碎片 OSD-04016 YOUR FILES ARE ENCRYPTED 比特币加密文章分类
- MongoDB (1)
- MongoDB恢复 (1)
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (112)
- 数据库 (1,878)
- DB2 (22)
- MySQL (82)
- Oracle (1,704)
- Data Guard (53)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (168)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (72)
- Oracle Bug (8)
- Oracle RAC (56)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (659)
- Oracle安装升级 (107)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (91)
- PostgreSQL (37)
- pdu工具 (7)
- PostgreSQL恢复 (13)
- SQL Server (34)
- SQL Server恢复 (14)
- TimesTen (7)
- 达梦数据库 (5)
- 达梦恢复 (3)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (51)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (34)
- MongoDB (1)
-
最近发表
- 由于con$.con#值达到极限,触发数据库增加约束报ORA-600 12807错误
- MongoDB 离线提取工具—mongoext
- .bres勒索病毒加密数据库dmp文件可恢复
- ORA-600 krsm_mrp_rebuild_lf_list.lno_mismatch
- 记录一次0丢失的ORA-00354: 损坏重做日志块标头故障恢复
- 不当数据库恢复操作导致一个月数据丢失
- obet快速修复oracle 位图损坏块
- 不太常见的10.2.0.1的oracle redo损坏恢复
- obet forcecopy功能抢救硬件故障中的数据文件
- kcratr_nab_less_than_odr和system坏块故障处理
- 通过obet 恢复system坏块,打开数据库
- obet dbv功能完整说明
- 分享一例运行在aix上的sap系统数据库恢复过程
- OBET-Oracle Block Editor Tool使用说明
- 几乎动用了所有手段的Oracle故障恢复
- Oracle Block Edit Tool (obet) 功能增强–2026.07
- Oracle 19c 202607补丁(RUs+OJVM)-19.32
- Patch_SCN快速修复ORA-01555数据库open故障
- 快速处理 ORA-01210: data file header is media corrupt 故障
- ORA-00314: log 3 of thread 1, expected sequence# N doesn’t match 0
分类目录归档:Oracle
CSSD signal 11 in thread clssnmRcfgMgrThread故障处理
一个客户,集群无法启动,只能启动到如下状态

查看cssd日志有CSSD signal 11 in thread clssnmRcfgMgrThread报错
2025-02-21 18:21:25.500: [ CSSD][2788693760]clssnmDoSyncUpdate: node(2) is transitioning from joining state to active state
2025-02-21 18:21:25.500: [ CSSD][2788693760]clssnmDoSyncUpdate: Wait for 0 vote ack(s)
2025-02-21 18:21:25.500: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:25.700: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:25.901: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:25.995: [ CSSD][2801538816]clssnmvDiskPing: Writing with status 0x2, timestamp 1740133285/5870104
2025-02-21 18:21:25.997: [ CSSD][2799818496]clssnmvDiskKillCheck: not evicted, file /dev/dm-4 flags 0x00000000,
kill block unique 0, my unique 1740133265
2025-02-21 18:21:26.000: [ CSSD][2793424640]clssgmWaitOnEventValue: after CmInfo State val 3, eval 2 waited 500
2025-02-21 18:21:26.101: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:26.302: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:26.497: [ CSSD][2801538816]clssnmvDiskPing: Writing with status 0x2, timestamp 1740133286/5870604
2025-02-21 18:21:26.502: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:26.702: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:26.902: [ CSSD][2788693760]clssnmDoSyncUpdate: waiting to update states on disk
2025-02-21 18:21:26.997: [ CSSD][2799818496]clssnmvDiskKillCheck: not evicted, file /dev/dm-4 flags 0x00000000,
kill block unique 0, my unique 1740133265
2025-02-21 18:21:26.997: [ CSSD][2801538816]clssnmvDiskPing: Writing with status 0x2, timestamp 1740133286/5871114
2025-02-21 18:21:27.000: [ CSSD][2793424640]clssgmWaitOnEventValue: after CmInfo State val 3, eval 2 waited 0
2025-02-21 18:21:27.102: [ CSSD][2788693760]clssnmCheckDskInfo: Checking disk info...
2025-02-21 18:21:27.102: [ CSSD][2788693760]clssnmCheckDskInfo: diskTimeout set to (200000)ms
2025-02-21 18:21:27.103: [ CSSD][2788693760]###################################
2025-02-21 18:21:27.103: [ CSSD][2788693760]clssscExit: CSSD signal 11 in thread clssnmRcfgMgrThread
2025-02-21 18:21:27.103: [ CSSD][2788693760]###################################
2025-02-21 18:21:27.103: [ CSSD][2788693760](:CSSSC00012:)clssscExit: A fatal error occurred and the CSS daemon is terminating abnormally
2025-02-21 18:21:27.103: [ CSSD][2788693760]
----- Call Stack Trace -----
2025-02-21 18:21:27.103: [ CSSD][2788693760]calling call entry argument values in hex
2025-02-21 18:21:27.103: [ CSSD][2788693760]location type point (? means dubious value)
2025-02-21 18:21:27.103: [ CSSD][2788693760]-------------------- -------- -------------------- ----------------------------
2025-02-21 18:21:27.109: [ CSSD][2788693760]clssscExit()+745 call kgdsdst() 000000000 ? 000000000 ?
2025-02-21 18:21:27.109: [ CSSD][2788693760] 7F9EA637A650 ? 7F9EA637A728 ?
2025-02-21 18:21:27.109: [ CSSD][2788693760] 7F9EA637F1D0 ? 000000003 ?
2025-02-21 18:21:27.109: [ CSSD][2788693760]s0clsssc_sighandler call clssscExit() 001FB9FA0 ? 000000002 ?
2025-02-21 18:21:27.109: [ CSSD][2788693760]()+616 7F9EA637A650 ? 7F9EA637A728 ?
2025-02-21 18:21:27.109: [ CSSD][2788693760] 7F9EA637F1D0 ? 000000003 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]__sighandler() call s0clsssc_sighandler 00000000B ? 000000002 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] () 7F9EA637A650 ? 7F9EA637A728 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 7F9EA637F1D0 ? 000000003 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]clssnmCheckSplit()+ signal __sighandler() 001BEE8A8 ? 000000000 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]378 002039A80 ? 000000001 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 0004D2B40 ? 7F9EA63803C0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]clssnmCheckDskInfo( call clssnmCheckSplit() 001FB9FA0 ? 001DC83F0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760])+387 000030D40 ? 000000001 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 0004D2B40 ? 7F9EA63803C0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]clssnmDoSyncUpdate( call clssnmCheckDskInfo( 001FB9FA0 ? 001DC83F0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760])+4692 ) 000000001 ? 000000001 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 0004D2B40 ? 7F9EA63803C0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]clssnmLocalJoinEven call clssnmDoSyncUpdate( 001FB9FA0 ? 001DC83F0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]t()+3992 ) FFFFFFFFFFFFFFFF ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 000000001 ? 7F9EA6380D20 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 7F9EA63803C0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]clssnmRcfgMgrThread call clssnmLocalJoinEven 001FB9FA0 ? 001DC83F0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]()+2290 t() FFFFFFFFFFFFFFFF ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 000000001 ? 7F9EA6380D20 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 7F9EA63803C0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]clssscthrdmain()+25 call clssnmRcfgMgrThread 001FB9FA0 ? 001DC83F0 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760]3 () FFFFFFFFFFFFFFFF ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 000000001 ? 7F9EA6380D20 ?
2025-02-21 18:21:27.110: [ CSSD][2788693760] 7F9EA63803C0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760]start_thread()+209 call clssscthrdmain() 001FB9FA0 ? 001DC83F0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] FFFFFFFFFFFFFFFF ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] 000000001 ? 7F9EA6380D20 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] 7F9EA63803C0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760]clone()+109 call start_thread() 7F9EA6381700 ? 001DC83F0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] FFFFFFFFFFFFFFFF ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] 000000001 ? 7F9EA6380D20 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] 7F9EA63803C0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760]0000000000000000 call clone() 7F9EA6381700 ? 001DC83F0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] FFFFFFFFFFFFFFFF ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] 000000001 ? 7F9EA6380D20 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760] 7F9EA63803C0 ?
2025-02-21 18:21:27.111: [ CSSD][2788693760]
2025-02-21 18:21:27.111: [ CSSD][2788693760]--------------------- Binary Stack Dump ---------------------
这里提示表决盘超时,尝试启动nocrs貌似,在表决盘存在的情况下,启动依旧失败,通过处理让启动过程不读表决盘,启动nocrs模式成功,并mount其他业务磁盘组



确认其他磁盘没有问题,重建crs磁盘组
SQL> create diskgroup OCR external redundancy disk '/dev/dm-4' force attribute 'COMPATIBLE.ASM' = '11.2.0'; # ocrconfig -restore /u01/app/11.2.0.3/grid/cdata/scan/backup00.ocr # crsctl replace votedisk +OCR SQL> create spfile from pfile='/tmp/pfile.asm';
然后重启crs恢复正常
使用sid方式直接访问pdb(USE_SID_AS_SERVICE_LISTENER)
有些应用,因为特殊原因,需要通过sid来访问数据库,在pdb环境中原则上都是通过服务名访问的,可以通过一定的监听配置实现使用pdb名的sid来访问该pdb
在pdb0中创建u_test用户并授权
[oracle@ora19c:/u01/app/oracle/product/19.3.0/db/network/admin]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Mon Feb 17 22:01:54 2025
Version 19.24.0.0.0
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.24.0.0.0
sys@ORA19C 22:01:54> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB0 READ WRITE NO
4 PDBXXX MOUNTED
sys@ORA19C 22:01:56> alter session set container=pdb0;
Session altered.
Elapsed: 00:00:00.16
sys@ORA19C 22:02:07> create user u_test identified by oracle;
User created.
Elapsed: 00:00:00.29
sys@ORA19C 22:02:21> grant dba to u_test;
Grant succeeded.
Elapsed: 00:00:00.01
监听的配置和状态
[oracle@ora19c:/home/oracle]$ cat /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ora19c)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
[oracle@ora19c:/home/oracle]$ lsnrctl status
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 17-FEB-2025 22:07:12
Copyright (c) 1991, 2024, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora19c)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 17-FEB-2025 22:06:39
Uptime 0 days 0 hr. 0 min. 32 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/ora19c/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora19c)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "21b067cbda1dbcd4e0630100007f12b6" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "22394b20557aff3ee0630100007fafe0" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "86b637b62fdf7a65e053f706e80a27ca" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "ora19c" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "ora19cXDB" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "pdb0" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "pdbxxx" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
The command completed successfully
创建pdb0基于服务和sid的tns(pdb0,pdb0_sid)
[oracle@ora19c:/u01/app/oracle/product/19.3.0/db/network/admin]$ cat tnsnames.ora
pdb0 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ora19c)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = pdb0)
)
)
pdb0_sid =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ora19c)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(sid = pdb0)
)
)
[oracle@ora19c:/u01/app/oracle/product/19.3.0/db/network/admin]$ tnsping pdb0
TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 17-FEB-2025 22:03:00
Copyright (c) 1997, 2024, Oracle. All rights reserved.
Used parameter files:
/u01/app/oracle/product/19.3.0/db/network/admin/sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ora19c)(PORT = 1521))
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = pdb0)))
OK (0 msec)
[oracle@ora19c:/u01/app/oracle/product/19.3.0/db/network/admin]$ tnsping pdb0_sid
TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 17-FEB-2025 22:03:10
Copyright (c) 1997, 2024, Oracle. All rights reserved.
Used parameter files:
/u01/app/oracle/product/19.3.0/db/network/admin/sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ora19c)(PORT = 1521))
(CONNECT_DATA = (SERVER = DEDICATED) (sid = pdb0)))
OK (0 msec)
分别测试pdb0和pdb0_sid访问数据库
测试证明基于服务名的方式可以正常访问pdb,基于sid的方式无法访问pdb
[oracle@ora19c:/home/oracle]$ sqlplus u_test/oracle@pdb0 SQL*Plus: Release 19.0.0.0.0 - Production on Mon Feb 17 22:08:35 2025 Version 19.24.0.0.0 Copyright (c) 1982, 2024, Oracle. All rights reserved. Last Successful login time: Mon Feb 17 2025 22:06:11 +08:00 Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.24.0.0.0 u_test@PDB0 22:08:35> exit Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.24.0.0.0 [oracle@ora19c:/home/oracle]$ sqlplus u_test/oracle@pdb0_sid SQL*Plus: Release 19.0.0.0.0 - Production on Mon Feb 17 22:08:39 2025 Version 19.24.0.0.0 Copyright (c) 1982, 2024, Oracle. All rights reserved. ERROR: ORA-12505: TNS:listener does not currently know of SID given in connect descriptor Enter user-name: ERROR: ORA-01017: invalid username/password; logon denied Enter user-name: ERROR: ORA-01017: invalid username/password; logon denied SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus
在listener.ora中增加USE_SID_AS_SERVICE_LISTENER = ON,并reload加载
注意:USE_SID_AS_SERVICE_LISTENER 中的LISTENER根据不同的监听名字而发生改变
[oracle@ora19c:/home/oracle]$ cat /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ora19c)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
USE_SID_AS_SERVICE_LISTENER = ON
[oracle@ora19c:/home/oracle]$ lsnrctl reload
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 17-FEB-2025 22:12:13
Copyright (c) 1991, 2024, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora19c)(PORT=1521)))
The command completed successfully
[oracle@ora19c:/home/oracle]$ lsnrctl status
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 17-FEB-2025 22:13:05
Copyright (c) 1991, 2024, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora19c)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date 17-FEB-2025 22:06:39
Uptime 0 days 0 hr. 6 min. 26 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/oracle/product/19.3.0/db/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/ora19c/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora19c)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "21b067cbda1dbcd4e0630100007f12b6" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "22394b20557aff3ee0630100007fafe0" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "86b637b62fdf7a65e053f706e80a27ca" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "ora19c" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "ora19cXDB" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "pdb0" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
Service "pdbxxx" has 1 instance(s).
Instance "ora19c", status READY, has 1 handler(s) for this service...
The command completed successfully
尝试tns名字为pdb0和pdb0_sid名字登录数据库
在listener.ora文件中设置了USE_SID_AS_SERVICE_LISTENER = ON之后,基于sid的方式可以直接访问pdb
[oracle@ora19c:/home/oracle]$ sqlplus u_test/oracle@pdb0_sid SQL*Plus: Release 19.0.0.0.0 - Production on Mon Feb 17 22:12:16 2025 Version 19.24.0.0.0 Copyright (c) 1982, 2024, Oracle. All rights reserved. Last Successful login time: Mon Feb 17 2025 22:08:35 +08:00 Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.24.0.0.0 u_test@PDB0 22:12:16> exit Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.24.0.0.0 [oracle@ora19c:/home/oracle]$ sqlplus u_test/oracle@pdb0 SQL*Plus: Release 19.0.0.0.0 - Production on Mon Feb 17 22:12:28 2025 Version 19.24.0.0.0 Copyright (c) 1982, 2024, Oracle. All rights reserved. Last Successful login time: Mon Feb 17 2025 22:12:16 +08:00 Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.24.0.0.0 u_test@PDB0 22:12:28>
ORA-00069: cannot acquire lock — table locks disabled for xxxx
在oracle数据库中删除用户遭遇ORA-00069: cannot acquire lock — table locks disabled for HR_XXX_01错误
SQL> drop user XFF cascade; drop user XFF cascade * ERROR at line 1: ORA-00604: error occurred at recursive SQL level 1 ORA-00069: cannot acquire lock -- table locks disabled for HR_XXX_01
关于ORA-00069错误解释
[oracle@xifenfei.com ~]$ oerr ora 00069 00069, 00000, "cannot acquire lock -- table locks disabled for %s" // *Cause: A command was issued that tried to lock the table indicated in // the message. Examples of commands that can lock tables are: // LOCK TABLE, ALTER TABLE ... ADD (...), and so on. // *Action: Use the ALTER TABLE ... ENABLE TABLE LOCK command, and retry // the command.
尝试lock表,直接hang,强制终止
SQL> alter table XFF.HR_XXX_01 enable table lock; ^Calter table XFF.HR_XXX_01 enable table lock * ERROR at line 1: ORA-01013: user requested cancel of current operation
查询tab$.flags的值
SQL> col object_name for a30
SQL> set lines 150
SQL> select x. object_name,obj#, flags
2 from sys.tab$,(
3 select object_name, object_id
4 from dba_objects
5 where owner='XFF'
6 and object_name in ('HR_XXX_01','HR_XXXCONTROL','XXXLZB_JD1')
7 and object_type = 'TABLE') x
8 where obj# = x.object_id;
OBJECT_NAME OBJ# FLAGS
------------------------------ ---------- ----------
XXXLZB_JD1 246416 1073742353
HR_XXXCONTROL 246421 1073742353
HR_XXX_01 246424 1073742359
发现报错表的flags和其他表不一样(其他表为1073742353,而报错表为1073742359),对于这种情况官方给出来的解决方法,关闭库,确保没有任何额外会话连接上来

因为本身要重启库维护,直接把库启动到upgrade模式进行操作
[oracle@xifenfei.com ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Fri Feb 14 20:29:28 2025 Version 19.24.0.0.0 Copyright (c) 1982, 2024, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.24.0.0.0 SQL> alter system checkpoint; System altered. SQL> / System altered. SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup upgrade; ORACLE instance started. Total System Global Area 4.2950E+10 bytes Fixed Size 23149944 bytes Variable Size 9529458688 bytes Database Buffers 3.3286E+10 bytes Redo Buffers 111067136 bytes Database mounted. Database opened. SQL> startup upgrade; ORACLE instance started. Total System Global Area 4.2950E+10 bytes Fixed Size 23149944 bytes Variable Size 9529458688 bytes Database Buffers 3.3286E+10 bytes Redo Buffers 111067136 bytes Database mounted. Database opened. SQL> drop user XFF cascade; drop user FZHR cascade * ERROR at line 1: ORA-00604: error occurred at recursive SQL level 1 ORA-00069: cannot acquire lock -- table locks disabled for HR_XXX_01 SQL> alter table XFF.HR_XXX_01 enable table lock; Table altered. SQL> drop user XFF cascade; User dropped. SQL>

加我微信(17813235971)
加我QQ(107644445)

