oracle之 SYSAUX表空間維護
1、查詢表空間使用率
SQL> set linesize 400
SQL> set pagesize 400
SQL>
SELECT D.TABLESPACE_NAME 表空間名稱,SPACE "表空間(MB)",BLOCKS 總塊數,SPACE - NVL(FREE_SPACE, 0) "已使用(MB)",
ROUND((1 - NVL(FREE_SPACE, 0) / SPACE) * 100, 2) "使用率(%)",FREE_SPACE "未使用(MB)"
FROM
(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) SPACE,
SUM(BLOCKS) BLOCKS
FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) D,
(SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) FREE_SPACE
FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+);
2、查詢 sysaux 表空間詳細佔用情況
SQL>
col Schema for a25;
col Item for a25;
SELECT occupant_name "Item",
space_usage_kbytes / 1048576 "Space Used (GB)",
schema_name "Schema",
move_procedure "Move Procedure"
FROM v$sysaux_occupants
ORDER BY 1 ;
Item Space Used (GB) Schema Move Procedure
------------------------------ --------------- --------------------------- ------------------------------------------
AO .101318359 SYS DBMS_AW.MOVE_AWMETA
AUDIT_TABLES 0 SYS DBMS_AUDIT_MGMT.move_dbaudit_tables
AUTO_TASK .000915527 SYS
EM .11517334 SYSMAN emd_maintenance.move_em_tblspc
EM_MONITORING_USER .001953125 DBSNMP
EXPRESSION_FILTER .010620117 EXFSYS
JOB_SCHEDULER .002380371 SYS
LOGMNR .030822754 SYSTEM SYS.DBMS_LOGMNR_D.SET_TABLESPACE
LOGSTDBY .00402832 SYSTEM SYS.DBMS_LOGSTDBY.SET_TABLESPACE
ORDIM .001281738 ORDSYS ordsys.ord_admin.move_ordim_tblspc
ORDIM/ORDDATA .046875 ORDDATA ordsys.ord_admin.move_ordim_tblspc
ORDIM/ORDPLUGINS 0 ORDPLUGINS ordsys.ord_admin.move_ordim_tblspc
ORDIM/SI_INFORMTN_SCHEMA 0 SI_INFORMTN_SCHEMA ordsys.ord_admin.move_ordim_tblspc
PL/SCOPE .001831055 SYS
SDO .14440918 MDSYS MDSYS.MOVE_SDO
SM/ADVISOR .102294922 SYS
SM/AWR 1.22515869 SYS
SM/OPTSTAT 11.755188 SYS
SM/OTHER .020568848 SYS
SMON_SCN_TIME .004394531 SYS
SQL_MANAGEMENT_BASE .004943848 SYS
STATSPACK 0 PERFSTAT
STREAMS .002929688 SYS
TEXT .010437012 CTXSYS DRI_MOVE_CTXSYS
TSM 0 TSMSYS
ULTRASEARCH 0 WKSYS MOVE_WK
ULTRASEARCH_DEMO_USER 0 WK_TEST MOVE_WK
WM .010253906 WMSYS DBMS_WM.move_proc
XDB .317932129 XDB XDB.DBMS_XDB.MOVEXDB_TABLESPACE
XSAMD .015014648 OLAPSYS DBMS_AMD.Move_OLAP_Catalog
XSOQHIST .101318359 SYS DBMS_XSOQ.OlapiMoveProc
31 rows selected.
2.1、
SM/OPTSTAT:
這將儲存更老版本的最佳化器統計資訊。
我們在Oracle Database 10g中有了新的功能,可以讓您恢復舊的統計資料,以防在重新整理資料時遇到執行計劃迴歸。此資料的預設保留時間為31天。關於如何使用這一點的更多細節可以在註釋452011.1中找到。嚴格地說,這不是AWR的一部分,因此不受AWR保留引數的控制,相反,我們可以使用DBMS_STATS包的ALTER_STATS_HISTORY_RETENTION過程來設定和更改該資料的保留時間。例如,您可以先檢查當前保留時間,然後將其更改為不同的數量(在幾天內),例如10天:
select dbms_stats.get_stats_history_retention from dual;
exec dbms_stats.alter_stats_history_retention(10);
如果您喜歡在某個時間戳之前特別清除資料,您可以使用PURGE_STATS過程。例如:
exec DBMS_STATS.PURGE_STATS(to_timestamp_tz('01-01-2018 00:00:00 Europe/London','DD-MM-YYYY HH24:MI:SS TZR'));
2.2、 AWR部分
SQL>
col SNAP_INTERVAL for a20
col RETENTION for a20
select * from dba_hist_wr_control;
DBID SNAP_INTERVAL RETENTION TOPNSQL
---------- -------------------- -------------------- ----------
213111497 +00000 01:00:00.0 +00008 00:00:00.0 DEFAULT
說明:
SNAP_INTERVAL=+00000 01:00:00.0 :表示取樣間隔是1小時
RETENTION=+00008 00:00:00.0 :表示取樣資料保留期限是8天
SQL>
begin
dbms_workload_repository.modify_snapshot_settings (
interval => 60, --每小時一次
retention => 7*24*60, --保留7天
topnsql => 100
);
end;
注意:如果快照太多,佔用太多空間,也可以刪除一些快照:
select min(snap_id),max(snap_id) from dba_hist_snapshot; --查詢最最小和最大快照ID
--刪除 編號 10758至10900 快照
begin
dbms_workload_repository.drop_snapshot_range(
low_snap_id => 10758, --根據情況設定
high_snap_id => 10900,
dbid => 387090299); DBID根據實際情況
end;
/
說明:
(1)如果AWR沒有用的話,可以將取樣時間間隔調整為最長100年,同時,把取樣資料保留時間調整到最小1天的方式實現“禁用”AWR。
SQL> BEGIN
DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS(
interval => 36500*24*60,
retention => 1*24*60);
END;
/
select * from dba_hist_wr_control;
DBID SNAP_INTERVAL RETENTION TOPNSQL
---------- -------------------- -------------------- ----------
4134757407 +36500 00:00:00.0 +00001 00:00:00.0 DEFAULT
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2150101/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle10g以上sysaux表空間的維護和清理OracleUX
- Oracle清理SYSAUX表空間OracleUX
- ORACLE的SYSAUX 表空間OracleUX
- oracle表空間管理維護Oracle
- Oracle表空間維護總結Oracle
- oracle12c之 表空間維護總結Oracle
- SYSAUX表空間清理之SM/OPTSTATUX
- 32、SYSAUX表空間UX
- 2.5.4.1 關於SYSAUX表空間UX
- 認識 SYSAUX 表空間(zt)UX
- oracle sysaux表空間滿了處理辦法OracleUX
- AWR佔用sysaux表空間太大UX
- SYSAUX表空間管理及恢復UX
- 10g ORACLE_HOME空間滿導致SYSAUX表空間離線OracleUX
- oracle 10g SYSAUX表空間快速增長之WRH$_SQL_PLAN篇Oracle 10gUXSQL
- Oracle SYSAUX表空間使用率超過警戒閥值OracleUX
- 【Oracle-資料庫維護】-刪除臨時表空間Oracle資料庫
- 4.2.1.7 規劃 SYSTEM 和 SYSAUX 表空間UX
- sysaux 表空間爆滿處理方法UX
- sysaux 表空間不足問題處理UX
- 修復受損的SYSAUX表空間UX
- ORACLE 10g SYSAUX表空間快速增長之WRH$_ACTIVE_SESSION_HISTORY篇Oracle 10gUXSession
- oracle 10g SYSAUX表空間快速增長之WRI$_OPTSTAT_HISTGRM_HISTORY篇Oracle 10gUX
- 10G 新特性系列: SYSAUX 表空間UX
- 從system/sysaux空間轉移TABLE&Index到其它表空間UXIndex
- 【臨時表空間組】臨時表空間組的建立、維護及應用
- Oracle SYSAUX 表空間使用率100% 導致的DB 故障OracleUX
- oracle 10g SYSAUX表空間快速增長之STREAMS$_APPLY_SPILL_MESSAGES篇Oracle 10gUXAPP
- Oracle案例08——xx.xx.xx.xx,表空間 SYSAUX 使用率>95%%OracleUX
- oracle10g的sysaux空間暴增與空間回收-轉載OracleUX
- Oracle SQL 基本操作之 表空間OracleSQL
- Oracle GoldenGate同步服務歸檔空間維護OracleGo
- AWR不自動刪除導致SYSAUX表空間滿UX
- 記一次sysaux表空間壞塊修復UX
- sysaux表空間檔案損壞的處理(zt)UX
- SYSAUX表空間使用率高問題處理UX
- 【TEMP】臨時表空間的工作原理及維護方法
- 資料庫維護常用操作4--表空間操作資料庫