oracle 由于impdp 引起的表统计信息被锁 ORA-20005: object statistics are locked

本文介绍了解决Oracle数据库中统计信息未能自动生成的问题,包括如何解锁schema统计信息及重新收集统计信息的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

发现一个用户下统计信息没有生成,
查询user_tab_modifications 发现变动信息也超过10%

没有警告日志
执行
exec dbms_stats.gather_schema_stats(ownname => 'test',granularity => 'ALL',cascade => true);
还是没有生成

然后执行报
begin dbms_stats.gather_table_stats(ownname => 'test',tabname => 'TCCLICOMH',granularity => 'ALL',cascade => true); end;
 
ORA-20005: object statistics are locked (stattype = ALL)
ORA-06512: 在 "SYS.DBMS_STATS", line 13056
ORA-06512: 在 "SYS.DBMS_STATS", line 13076
ORA-06512: 在 line 2

执行以下脚本后正常
SQL> exec dbms_stats.unlock_schema_stats(ownname => 'test');
 
PL/SQL procedure successfully completed
 
SQL>exec dbms_stats.gather_schema_stats(ownname => 'test',granularity => 'ALL',cascade => true);
 
PL/SQL procedure successfully completed


原因是因为使用impdp  只导入metadata_only 或(expdp的时候使用了contend=metadata_only)时 没有使用use exclude=(table_statistics,index_statistics)
引起的


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值