dba_tab_modifications檢視(基表為sys.mon_mods_all$)記錄了從上次收集統計資訊以來表中dml操作變化的資料量,包括執行insert、update和delete影響的行數,以及是否執行過truncate操作。另外,dbms_stats.flush_database_monitoring_info可以將記憶體中的資料快速重新整理到資料字典sys.mon_mods_all$中。
在oracle 10g中,如果表中變更的行數(字典表sys.mon_mods_all$中記錄的insert++delete的總數)超過表的總行數(sys.tab$中記錄的目標表總記錄數)的10%時或自上次自動統計資訊收集作業完成之後目標表被執行過truncate操作,那麼該錶的統計資訊就變為陳舊狀態,oracle就會在指定時間段自動收集統計資訊。
在oracle 10g中,這個10%(stale_percent)是無法修改的,如果表非常大,那麼10%其實是非常多的資料,這就造成統計資訊不準確。在oracle 11g中,這個10%(stale_percent)是可以修改的,分為全域性(dbms_stats.set_global_prefs)、資料庫級別(dbms_stats.set_database_prefs)、使用者級別(dbms_stats.set_schema_prefs)和表級別(dbms_stats.set_table_prefs)。其中,資料庫級別和使用者級別都是呼叫表級別的儲存過程dbms_stats.set_table_prefs來對錶進行設定的。
表級別的設定如下所示:
修改為5%(範圍從1-100):exec dbms_stats.set_table_prefs(user,'table_name','stale_percent',5);
恢復為10%: exec dbms_stats.set_table_prefs(user,'table_name','stale_percent',null);
查詢表百分比:select dbms_stats.get_prefs('stale_percent',user,'table_name') from dual;
查詢全域性百分比:select dbms_stats.get_prefs('stale_percent') from dual;
select dbms_stats.get_prefs('method_opt'),--統計量收集
dbms_stats.get_prefs('concurrent'),--併發
dbms_stats.get_prefs('granularity'),----粒度
dbms_stats.get_prefs('incremental')---分割槽表只資料變動分割槽
from dual;
--查詢統計資訊的收集所對應的task
select t.*
from dba_autotask_task t
where t.client_name = 'auto optimizer stats collection';
--查詢統計資訊的收集所對應的排程程式
select t.*
from dba_scheduler_programs t
where t.program_name = 'gather_stats_prog';
select *
from dba_autotask_client a
where a.client_name = 'auto optimizer stats collection';
--查詢task的視窗
select t.* from dba_autotask_window_clients t;
select t.* from dba_scheduler_windows t where enabled = 'true';
--查詢定時任務執行
select *
from dba_scheduler_job_run_details t
where t.job_name like 'ora$at_os_opt_%'
order by t.log_date desc;
參考:
Linux配置Oracle 11g自動啟動
安裝完畢oracle 11g每次都得手動啟動 停止資料庫 dbstart dbshut lsnrctl 控制台 emtcl oracle localhost vi dbstart 找到下面的 段 first argument is used to bring up oracle net listen...
解除安裝oracle 11g
估計和以前的版本一樣,先刪除物理檔案,然後再刪除登錄檔的檔案。大致方法如下 1 刪除物理檔案 1 oracle安裝檔案。2 系統目錄下,program files檔案下的oracle檔案 2 登錄檔中大概有這麼幾個地方 hkey local machine software 刪除oracle目錄 h...
oracle 11G 解除安裝
oracle deinstall deconfig tool start check operation start 安裝檢查配置開始 選擇進行解除安裝的 oracle 主目錄型別為 sidb 檢查主產品清單位置是否存在 c program files oracle inventory 安裝檢查配置...