11g掛起釋出統計資料
11g掛起釋出統計資料
==============
11g之前,收集統計資訊,如analyze或者使用dbms_stats包後收集到的統計資訊會立即生效
11g中預設也是這樣
不過可以通過設定可以不自動釋出統計資訊
這樣在不知新的統計資訊是否對系統有幫助的情況下先進行測試
之後確定有幫助之後再發布
11g中預設也是這樣
不過可以通過設定可以不自動釋出統計資訊
這樣在不知新的統計資訊是否對系統有幫助的情況下先進行測試
之後確定有幫助之後再發布
--------------
--檢視預設統計資訊釋出方式
--true為自動釋出,false為掛起方式
SQL> select dbms_stats.get_prefs('publish') from dual;
DBMS_STATS.GET_PREFS('PUBLISH')
--------------------------------------------------------------------------------
TRUE
--true為自動釋出,false為掛起方式
SQL> select dbms_stats.get_prefs('publish') from dual;
DBMS_STATS.GET_PREFS('PUBLISH')
--------------------------------------------------------------------------------
TRUE
--對錶進行分析
--收集統計資訊
SQL> analyze table an.at compute statistics;
Table analyzed.
--收集統計資訊
SQL> analyze table an.at compute statistics;
Table analyzed.
--確認收集到的統計資訊
SQL> select table_name,last_analyzed,num_rows from dba_tables where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:44:06 0
--設定an使用者下表at的統計資訊釋出方式為掛起釋出
--反向操作將false改為true即可
SQL> exec dbms_stats.set_table_prefs('an','at','publish','false');
PL/SQL procedure successfully completed.
--確認an使用者下表at的統計資訊釋出方式
--false為掛起方式,true為自動釋出
SQL> select dbms_stats.get_prefs('publish','an','at') from dual;
DBMS_STATS.GET_PREFS('PUBLISH','AN','AT')
--------------------------------------------------------------------------------
FALSE
--再次對錶進行分析
--收集統計資訊
SQL> analyze table an.at compute statistics;
Table analyzed.
--收集統計資訊
SQL> analyze table an.at compute statistics;
Table analyzed.
--從dba_tables中確認到已經發布的統計資訊沒有發生改變
--證明當前對錶an.at統計資訊的收集方式修改生效
SQL> select table_name,last_analyzed,num_rows from dba_tables where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:44:06 0
--證明當前對錶an.at統計資訊的收集方式修改生效
SQL> select table_name,last_analyzed,num_rows from dba_tables where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:44:06 0
--對於掛起統計資訊表的查詢要在dba_tab_pending_stats中進行
--查詢結果為剛剛進行的分析時間
SQL> select table_name,last_analyzed,num_rows from dba_tab_pending_stats where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:45:52 0
--查詢結果為剛剛進行的分析時間
SQL> select table_name,last_analyzed,num_rows from dba_tab_pending_stats where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:45:52 0
--手動釋出掛起的統計資訊
--使優化程式能夠認到
SQL> exec dbms_stats.publish_pending_stats('AN','AT');
PL/SQL procedure successfully completed.
--使優化程式能夠認到
SQL> exec dbms_stats.publish_pending_stats('AN','AT');
PL/SQL procedure successfully completed.
--確認之前掛起的統計資訊已經發布
SQL> select table_name,last_analyzed,num_rows from dba_tables where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:45:52 0
SQL> select table_name,last_analyzed,num_rows from dba_tables where wner='AN' and table_name='AT';
TABLE_NAME LAST_ANALYZED NUM_ROWS
------------------------------ ------------------- ----------
AT 2011-12-01 11:45:52 0
--刪除掛起統計資訊
SQL> exec dbms_stats.delete_pending_stats('AN','AT')
PL/SQL procedure successfully completed.
SQL> exec dbms_stats.delete_pending_stats('AN','AT')
PL/SQL procedure successfully completed.
SQL> select table_name,last_analyzed,num_rows from dba_tab_pending_stats where wner='AN' and table_name='AT';
no rows selected
no rows selected
--刪除當前使用者下所有表的掛起統計資訊
--將delete改為publish即為釋出
SQL> exec dbms_stats.delete_pending_stats('AN',null)
PL/SQL procedure successfully completed.
--將delete改為publish即為釋出
SQL> exec dbms_stats.delete_pending_stats('AN',null)
PL/SQL procedure successfully completed.
--刪除全庫表的掛起統計資訊
--將delete改為publish即為釋出
SQL> exec dbms_stats.delete_pending_stats(null,null)
PL/SQL procedure successfully completed.
--將delete改為publish即為釋出
SQL> exec dbms_stats.delete_pending_stats(null,null)
PL/SQL procedure successfully completed.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13177610/viewspace-712536/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE 11g新特性-統計值掛起Oracle
- oracle 11g 待定釋出統計資訊Oracle
- 3.5 掛起和恢復資料庫資料庫
- 中國機器人最新統計資料釋出及分析(附圖)機器人
- Oracle 11g釋出Oracle
- 統計資料出現次數
- 來來,一起設計一個簡單的活動釋出系統
- IDE 外掛新版本釋出,開發效率 “biu” 起來了IDE
- 解決被掛起的資料庫問題資料庫
- 線上重定義引起的資料庫掛起資料庫
- 禁用oracle 11g 的統計資料自動功能Oracle
- Oracle 11g 資料統計量Pending處理Oracle
- 禁用11g的統計資料自動收集功能
- DB匯入/匯出統計資料
- ChatGPT for SegmentFault 外掛釋出!ChatGPT
- ASM空間爆滿導致資料庫掛起ASM資料庫
- Oracle資料庫的監聽器掛起情況Oracle資料庫
- 【Statistics】禁用11g的統計資料自動收集功能
- 對Oracle效能統計中的資料解釋Oracle
- 資料統計表外掛,highcharts外掛的簡單應用
- 新品釋出 | 綠盟資料脫敏系統DMS助力守護資料安全
- 11g資料庫出現壞塊資料庫
- SQLServer資料庫恢復掛起的解決辦法SQLServer資料庫
- 資料庫的掛起(suspending)和恢復(resuming)資料庫
- sqlsever處理資料庫的恢復掛起狀態SQL資料庫
- Vue外掛打包與釋出Vue
- 甲骨文釋出β版11g資料庫含182項新功能(轉)資料庫
- 資料庫大設計需求分析(門診掛號系統)資料庫
- 卓豪釋出IT大資料分析平臺,整合ITSM系統大資料
- oracle資料庫的掛起(Suspending)和恢復(Resuming)Oracle資料庫
- Oracle資料庫的靜默狀態和掛起狀態Oracle資料庫
- 使用GeoServer釋出PostGIS表資料Server
- 使用 Github Action 釋出 Flutter 外掛GithubFlutter
- 「3步」釋出 Laravel 外掛 (二)Laravel
- 統計資料
- 專業統計機構釋出最新統計資料:目前win10 pc版全球安裝量為1.64億份Win10
- 把兩個group by的統計資料聯合在一起
- Linux 系統程序掛起與恢復Linux