ORA-30013: undo tablespace currently in use故障处理思路
admin
2023-04-17 22:21:19
0

当日早上,某系统数仓数据库告警,数据库版本为12c,操作系统为RHEL7.2

2018-08-23T06:43:17.297341+08:00
PDB$SEED(2):Opatch validation is skipped for PDB PDB$SEED (con_id=0)
PDB$SEED(2):
PDB$SEED(2):WARNING: Pluggable Database PDB$SEED with pdb id - 2 is
PDB$SEED(2): altered with errors or warnings. Please look into
PDB$SEED(2): PDB_PLUG_IN_VIOLATIONS view for more details.
PDB$SEED(2):

2018-08-23T06:43:25.423893+08:00
PDB$SEED(2):Opening pdb with no Resource Manager plan active
2018-08-23T06:44:17.773603+08:00
DCDB(3):Autotune of undo retention is turned off.
2018-08-23T06:44:17.870219+08:00
DCDB(3):attach called for domid 3 (domuid: 0x786a7683, options: 0x4, pid: 191312)
DCDB(3):queued attach broadcast request 0x12372e9f68
2018-08-23T06:44:18.028918+08:00
DWDBPDB(4):Autotune of undo retention is turned off.
2018-08-23T06:44:18.103157+08:00
DWDBPDB(4):attach called for domid 4 (domuid: 0xd95b03fa, options: 0x4, pid: 191314)
DWDBPDB(4):queued attach broadcast request 0x12372e9f10
2018-08-23T06:44:18.394250+08:00
DCDB(3):Endian type of dictionary set to little
2018-08-23T06:44:18.623678+08:00
DWDBPDB(4):Endian type of dictionary set to little
2018-08-23T06:44:19.122431+08:00
DCDB(3):Undo initialization errored: err:30013 serial:0 start:858517331 end:858517597 diff:266 ms (0.3 seconds)
Pdb DCDB hit error 30013 during open read write (1) and will be closed.

尝试了一些手段,但是库无法启动,我们都知道,RAC系统正常情况是DB1使用untbs1,DB2使用untbs2。登陆系统查看也都正常。
16:56:09 > show parameter undo

NAME TYPE VALUE


_undo_autotune boolean FALSE
temp_undo_enabled boolean FALSE
undo_management string AUTO
undo_retention integer 7200
undo_tablespace string UNDOTBS1

16:56:09 > show parameter undo

NAME TYPE VALUE


_undo_autotune boolean FALSE
temp_undo_enabled boolean FALSE
undo_management string AUTO
undo_retention integer 7200
undo_tablespace string UNDOTBS2

无奈提交SR寻找后线支持,Oracle工程师反馈查询:
select a.SID,a.NAME,a.VALUE$,b.PDB_NAME
from
sys.pdb_spfile$ a,cdb_pdbs b
where a.PDB_UID=b.CON_UID;
15:21:33 > col PDB_NAME for a20
15:21:42 > /

SID NAME VALUE$ PDB_NAME


  • db_securefile 'PREFERRED' PDB$SEED
  • parallel_force_local TRUE DWDBPDB
  • db_securefile 'PREFERRED' DWDBPDB
  • undo_tablespace 'UNDOTBS1' DWDBPDB
    DWDB1 undo_tablespace 'UNDOTBS1' DWDBPDB
    DWDB2 undo_tablespace 'UNDOTBS2' DWDBPDB
    dwdb1 undo_tablespace 'UNDOTBS1' DWDBPDB
    dwdb2 undo_tablespace 'UNDOTBS2' DWDBPDB
  • undo_tablespace 'UNDOTBS2' DCDB
  • db_securefile 'PREFERRED' DCDB

10 rows selected.

SR继续反馈Please use following commands:

ALTER SESSION SET CONTAINER =DCDB;
ALTER SYSTEM SET undo_tablespace=UNDOTBS1 scope=spfile sid='dwdb1';
ALTER SYSTEM SET undo_tablespace=UNDOTBS2 scope=spfile sid='dwdb2';
alter pluggable database DCDB open;

Alert日志:
2018-08-23T16:18:39.584321+08:00
LOGMINER: End mining logfile for session 1 thread 1 sequence 212717, +DATA/DWDB/ONLINELOG/redo12a.log
2018-08-23T16:18:39.659829+08:00
LOGMINER: Begin mining logfile for session 1 thread 1 sequence 212718, +DATA/DWDB/ONLINELOG/redo13a.log
2018-08-23T16:18:46.032160+08:00
DCDB(3):ALTER SYSTEM SET undo_tablespace='UNDOTBS1' SCOPE=SPFILE SID='dwdb1' PDB='DCDB';
2018-08-23T16:18:52.234874+08:00
DCDB(3):ALTER SYSTEM SET undo_tablespace='UNDOTBS2' SCOPE=SPFILE SID='dwdb2' PDB='DCDB';
2018-08-23T16:19:11.306657+08:00
DCDB(3):alter pluggable database DCDB open

我们在查询一下:
16:56:08 > select a.SID,a.NAME,a.VALUE$,b.PDB_NAME
16:56:09 2 from
16:56:09 3 sys.pdb_spfile$ a,cdb_pdbs b
16:56:09 4 where a.PDB_UID=b.CON_UID;

SID NAME VALUE$ PDB_NAME


  • db_securefile 'PREFERRED' PDB$SEED
  • parallel_force_local TRUE DWDBPDB
  • db_securefile 'PREFERRED' DWDBPDB
  • undo_tablespace 'UNDOTBS1' DWDBPDB
    DWDB1 undo_tablespace 'UNDOTBS1' DWDBPDB
    DWDB2 undo_tablespace 'UNDOTBS2' DWDBPDB
    dwdb1 undo_tablespace 'UNDOTBS1' DWDBPDB
    dwdb2 undo_tablespace 'UNDOTBS2' DWDBPDB
  • undo_tablespace 'UNDOTBS2' DCDB
    dcdb1 undo_tablespace 'UNDOTBS1' DCDB
  • db_securefile 'PREFERRED' DCDB
    dcdb2 undo_tablespace 'UNDOTBS2' DCDB
    dwdb1 undo_tablespace 'UNDOTBS1' DCDB
    dwdb2 undo_tablespace 'UNDOTBS2' DCDB

14 rows selected.

这里有个坑,需要我们指定对SID为正确的PDB,这里有个乌龙,Oracle SR后台工程师让此之前有错误建议:

ALTER SESSION SET CONTAINER =DCDB;
ALTER SYSTEM SET undo_tablespace=UNDOTBS1 scope=spfile sid='dcdb1';
ALTER SYSTEM SET undo_tablespace=UNDOTBS2 scope=spfile sid='dcdb2';
alter pluggable database DCDB open;

The difference is that:

2018-08-23T15:53:13.142757+08:00
DCDB(3):ALTER SYSTEM SET undo_tablespace='UNDOTBS1' SCOPE=SPFILE SID='dcdb1' PDB='DCDB'; ---错误
《==DCDB(3): this command is executed in pdb DCDB

2018-08-23T11:07:37.996006+08:00
ALTER SYSTEM SET undo_tablespace='UNDOTBS1' SCOPE=BOTH SID='dwdb1'; --正确

<=======this command is executed in cdb.

好记性不如烂笔头,特此记录一下12c的那些坑~

相关内容

热门资讯

中牟改善买房必看:三代宅和四代... 准备在中牟买改善房的人,十有八九会纠结同一个问题:到底是买传统的第三代住宅,还是紧跟郑州置业主流买第...
徐巧芯剖析赖清德:最怕自己丢掉... 海峡导报综合报道 大罢免投票一周年纪念活动26日举行,台北市长蒋万安出席并怒轰,民进党一年过后仍没有...
中国红十字会总会紧急向广东调拨... 记者从中国红十字会总会了解到,针对台风“红霞”给广东造成的灾情,中国红十字会总会启动四级应急响应,紧...
这些少年,正被“毒蛋”围猎 李梦抽了几口电子烟,吐出了白色的烟雾,有一股浓烈的水果香味。随后,她看着自己握电子烟的手,跟身边人说...
蒋万安号召“倒阁”,卢秀燕认为... 海峡导报综合报道 台北市长蒋万安27日抛出震撼议题,表示多名民代向他提议推动“倒阁”,要求台行政机构...
特朗普将在白宫会见两位重要客人 俄乌战争仍未结束,美伊冲突又有升级风险。在此背景下,美国总统特朗普将在白宫接见乌克兰和以色列领导人。...
新租客打扫卧室柜子上掉落4万元... 近日,莲前西路某小区内,张倩签下一套房子的租赁合同。当天上午,她带着12岁的大女儿周馨怡和11岁的小...
六部门通告:禁止涉军队退役报废... 关于禁止涉军队退役报废装备销售活动的通告近年来,部分经营者在线上线下公开销售涉及我军退役报废装备(指...
九寨沟景区发生泥石流,部分道路... 7月26日,九寨沟风景名胜区管理局发布泥石流灾害通报:2026年7月26日15时50分,九寨沟景区局...
空调26度不凉是什么原因 从空调内部元器件来说,不凉的原因有可能是温度传感器出现故障了,也有可能是空调压缩机或者铜管出现问题,...