对于 Oracle DBA 来说,表空间监控是日常、定期监控的重要工作。
表空间的监控包括表空间状态、数据文件、表空间空间使用情况和剩余情况。
第一:表空间列表:
SQL> SELECT * FROM V$TABLESPACE;
TS# NAME INC
---------- ------------------------------ ---
0 SYSTEM YES
1 UNDOTBS1 YES
3 INDX YES
4 TOOLS YES
5 USERS YES
2 TEMP YES
7 SP YES
6 TEST YES
已选择8行。
主要检查最近表空间的增减变动情况,是不是正常。
第二。表空间的状态
SQL> SELECT TABLESPACE_NAME, BLOCK_SIZE, STATUS, SEGMENT_SPACE_MANAGEMENT
FROM DBA_TABLESPACES;
TABLESPACE_NAME BLOCK_SIZE STATUS SEGMEN
------------------------------ ---------- --------- ------
SYSTEM 16384 ONLINE MANUAL
UNDOTBS1 16384 ONLINE MANUAL
TEMP 16384 ONLINE MANUAL
INDX 16384 ONLINE AUTO
TOOLS 16384 ONLINE AUTO
USERS 16384 ONLINE AUTO
TEST 16384 ONLINE MANUAL
SP 16384 ONLINE MANUAL
如果有表空间的状态为 Offline,就要检查原因,看是人为的设置,还是出了问题,系统置为OffLine的。
第三。数据文件状态的检查:
SQL> SELECT TS#, FILE#, NAME, STATUS FROM V$DATAFILE;
TS# FILE# NAME STATUS
---------- ---------- ---------------------------------------- -------
0 1 D:/ORACLE/ORADATA/ORA92/SYSTEM01.DBF SYSTEM
1 2 D:/ORACLE/ORADATA/ORA92/UNDOTBS01.DBF ONLINE
3 3 D:/ORACLE/ORADATA/ORA92/INDX01.DBF ONLINE
4 4 D:/ORACLE/ORADATA/ORA92/TOOLS01.DBF ONLINE
5 5 D:/ORACLE/ORADATA/ORA92/USERS01.DBF ONLINE
7 6 D:/ORACLE/ORADATA/ORA92/SP01.DBF ONLINE
6 7 D:/ORACLE/ORADATA/ORA92/TEST01.DBF ONLINE
已选择7行。
如果数数文件有的状态为 OFFLINE,就要考虑要不要恢复了。
第三、表空间空间的使用情况:
SQL>
SELECT TABLESPACE_NAME,
MAX_M,
COUNT_BLOCKS FREE_BLK_CNT,
SUM_FREE_M,
TO_CHAR(100 * SUM_FREE_M / SUM_M, '99.99') || '%' AS PCT_FREE
FROM (SELECT TABLESPACE_NAME, SUM(BYTES) / 1024 / 1024 AS SUM_M
FROM DBA_DATA_FILES
GROUP BY TABLESPACE_NAME),
(SELECT TABLESPACE_NAME AS FS_TS_NAME,
MAX(BYTES) / 1024 / 1024 AS MAX_M,
COUNT(BLOCKS) AS COUNT_BLOCKS,
SUM(BYTES / 1024 / 1024) AS SUM_FREE_M
FROM DBA_FREE_SPACE
GROUP BY TABLESPACE_NAME)
WHERE TABLESPACE_NAME = FS_TS_NAME
ORDER BY PCT_FREE
TABLESPACE_NAME MAX_M FREE_BLK_CNT SUM_FREE_M PCT_FRE
------------------------------ ---------- ------------ ---------- -------
SP 28.1875 1 28.1875 23.49%
SYSTEM 80.9375 2 81.25 32.50%
UNDOTBS1 29 19 36.6875 73.38%
USERS 22.9375 1 22.9375 91.75%
TEST 9.9375 1 9.9375 99.38%
TOOLS 9.9375 1 9.9375 99.38%
INDX 24.9375 1 24.9375 99.75%
已选择7行。
检查表空间的增长情况和空间的剩余情况,如果有增长异常的表空间,就要查找原因,并对表空间快要满的表空间手动还是自动的扩展。
通过以上几方面,就可以有效的监控表间的情况。