Oracle统计信息收集与关闭

1.统计信息收集

参考:https://www.cnblogs.com/lijiaman/p/13039528.html

1.1.手动数据库统计信息收集

BEGIN
   DBMS_STATS.gather_database_stats;
END;
/

或者直接调用SYS下的GATHER_STATS_JOB(10G或者10G升级的11G)

select * from Dba_Scheduler_Jobs where JOB_NAME ='GATHER_STATS_JOB' ;

1.2.11G自动统计信息的查看

查看自动统计信息任务

select client_name ,status from DBA_AUTOTASK_CLIENT; 

查看自动统计信息收集窗口

select * from DBA_AUTOTASK_WINDOW_CLIENTS; 

 

1.3.11G自动统计信息收集关闭

通过DISABLE自动统计信息的job关闭自动统计信息收集

复制代码
/*关闭*/
BEGIN
   DBMS_AUTO_TASK_ADMIN.DISABLE (
      client_name   => 'auto optimizer stats collection',
      operation     => NULL,
      window_name   => NULL);
END;
/

/*打开*/
BEGIN
   DBMS_AUTO_TASK_ADMIN.ENABLE (
      client_name   => 'auto optimizer stats collection',
      operation     => NULL,
      window_name   => NULL);
END;
/
复制代码

 

通过关闭自动统计信息的窗口关闭自动统计信息收集(会影响到其他的自动JOB,例如sql tuning advisor)

/*关闭*/
EXEC DBMS_AUTO_TASK_ADMIN.disable;
/*开启*/
EXEC DBMS_AUTO_TASK_ADMIN.enable;

 

通过关闭相应job的相应时间窗口关闭

复制代码
/* 关闭*/
BEGIN
   DBMS_AUTO_TASK_ADMIN.disable (
      client_name   => 'auto optimizer stats collection',
      operation      => NULL,
      window_name   => 'SUNDAY_WINDOW');
END;
/

/*开启*/
BEGIN
   DBMS_AUTO_TASK_ADMIN.enable (
      client_name   => 'auto optimizer stats collection',
      operation     => NULL,
      window_name   => 'SUNDAY_WINDOW');
END;
/
复制代码

 

posted @   monkey6  阅读(80)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示