日期:2014-05-17  浏览次数:20729 次

每天凌晨02:00点到02:15,系统会很慢,求解
今天执行了

begin
dbms_auto_task_admin.DISABLE;
end;
/

不知道是否有效。

------解决方案--------------------
dbms_auto_task_admin你貌似用的不对哦。
DISABLE 是关闭数据库自动维护啊。按照你的意思 应该打开才对啊
具体使用如下:
例如:
BEGIN 
 DBMS_AUTO_TASK_ADMIN.disable( 
  client_name=>'autospaceadvisor', 
  operation =>NULL, 
  window_name=>NULL); 
END; 

BEGIN 
 DBMS_AUTO_TASK_ADMIN.enable( 
  client_name=>'autospaceadvisor', 
  operation =>NULL, 
  window_name=>NULL); 
END; 
/

--------------------------------------------------

朋友,我认为你应该看下是不是 定时JOB运行的程序 太占资源了。
先检查一下,哪个JOB 大概在这个时间段启动。
select * from dba_jobs;
看下 NEXT_DATE 下次运行时间。

建议检查 是不是哪段SQL代码的问题。

------解决方案--------------------
看看后台有没有那个时段自动运行的作业。
------解决方案--------------------
探讨
今天执行了

begin
dbms_auto_task_admin.DISABLE;
end;
/

------解决方案--------------------
看一下 top , 找一下最占CPU的进程,看一下是哪个sql
------解决方案--------------------
首先定位出系统慢的原因再制定解决方案,不能随便在网上或者问了别人以后,就随便对数据库进行操作
------解决方案--------------------
做个体检看看
------解决方案--------------------
应该有定时job运行占用资源吧
------解决方案--------------------
SQL code

--如果数据库系统很庞大,而又不熟悉时,请在凌晨02:00点到02:15之间执行如下语句可以检测出是那个JOB在运行:

select * from  dba_jobs_running;

--如果系统较小时,可以直接使用pl/sql等工具,查看JOB。

--如果找到JOB里存贮过程,尽可能优化之。

------解决方案--------------------

分析下2-3点的awr,就知道什么情况了. 

------解决方案--------------------
可以查看下 有些10g后默认job是不是导致问题的原因:
GATHER_STATS_JOB
AUTO_SPACE_ADVISOR_JOB
默认情况下在工作日的晚上 22:00 到第二天6:00
周末全天开启
建议最好关闭自动统计信息收集 GATHER_STATS_JOB