线上的一套oracle 数据库,最近分析性能状况需生产awr,发现数据库最新快照是1周之前的导致不能产生最新的awr,于是手动创建快照,执行
BEGIN
DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT;
END;
/
几分钟过去了,卡死,检查快照没有创建成功,之前也遇到过类似状况,数据字典统计信息陈旧或者缺失导致,于是手动收集数据库sys schema统计信息后,
BEGIN
SYS.DBMS_STATS.GATHER_SCHEMA_STATS (
OwnName => ‘SYS‘
,Granularity => ‘ALL‘
,Options => ‘GATHER AUTO‘
,Estimate_Percent => 30
,Method_Opt => ‘FOR ALL COLUMNS SIZE 1‘
,Degree => 4
,Cascade => TRUE
,No_Invalidate => FALSE);
END;
/
再次执行生成快照任务成功,后续检查快照都能正常生成,记录之。