溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Oracle 一些表空間問題的處理

發(fā)布時(shí)間:2020-07-15 22:54:20 來源:網(wǎng)絡(luò) 閱讀:839 作者:wzlinux 欄目:關(guān)系型數(shù)據(jù)庫

一,SYSAUX 表空間不足

SYSAUX 表空間做為 SYSTEM 表空間的輔助表空間,主要存放 EM 相關(guān)的內(nèi)容以及表統(tǒng)計(jì)信息,AWR快照,審計(jì)信息等,而如果 SYSAUX 表空間在默認(rèn)條件下你如果不做任何配置,隨著時(shí)間的推移,會(huì)膨脹的越來越大。

1、是什么占用了 sysaux 空間

select occupant_name, schema_name, occupant_desc, space_usage_kbytes
  from v$sysaux_occupants
 order by space_usage_kbytes desc

Oracle 一些表空間問題的處理

可以看到是主要是 AWR 占用了空間。

2、清除 AWR

SQL> connect / as sysdba
SQL> @?/rdbms/admin/catnoawr.sql
SQL> @?/rdbms/admin/catawrtb.sql

3、查看表空間占用情況

SELECT B.TABLESPACE_NAME 表空間,
       B.FILE_NAME 數(shù)據(jù)文件名,
       B.BYTES / 1024 / 1024 大小M,
       (B.BYTES - SUM(NVL(A.BYTES, 0))) / 1024 / 1024 已使用M,
       SUBSTR((B.BYTES - SUM(NVL(A.BYTES, 0))) / (B.BYTES) * 100, 1, 5) || '%' 使用率
  FROM DBA_FREE_SPACE A, DBA_DATA_FILES B
 WHERE A.FILE_ID = B.FILE_ID
 GROUP BY B.TABLESPACE_NAME, B.FILE_NAME, B.BYTES
 ORDER BY B.TABLESPACE_NAME

二、USER 表空間不足

1、zabbix 報(bào)警表空間不足

Oracle 一些表空間問題的處理

2、查看數(shù)據(jù)庫表空間占用情況

SELECT B.TABLESPACE_NAME 表空間,
       B.FILE_NAME 數(shù)據(jù)文件名,
       B.BYTES / 1024 / 1024 大小M,
       (B.BYTES - SUM(NVL(A.BYTES, 0))) / 1024 / 1024 已使用M,
       SUBSTR((B.BYTES - SUM(NVL(A.BYTES, 0))) / (B.BYTES) * 100, 1, 5) || '%' 使用率
  FROM DBA_FREE_SPACE A, DBA_DATA_FILES B
 WHERE A.FILE_ID = B.FILE_ID
 GROUP BY B.TABLESPACE_NAME, B.FILE_NAME, B.BYTES
 ORDER BY B.TABLESPACE_NAME

Oracle 一些表空間問題的處理

3、增加表空間

Alter tablespace USERS  add datafile '/ordata/orcl/users17.dbf' size 20G;

三、SYSTEM 表空間不足

1、查看表空間使用率

SELECT B.TABLESPACE_NAME 表空間,
       B.FILE_NAME 數(shù)據(jù)文件名,
       B.BYTES / 1024 / 1024 大小M,
       (B.BYTES - SUM(NVL(A.BYTES, 0))) / 1024 / 1024 已使用M,
       SUBSTR((B.BYTES - SUM(NVL(A.BYTES, 0))) / (B.BYTES) * 100, 1, 5) || '%' 使用率
  FROM DBA_FREE_SPACE A, DBA_DATA_FILES B
 WHERE A.FILE_ID = B.FILE_ID
 GROUP BY B.TABLESPACE_NAME, B.FILE_NAME, B.BYTES
 ORDER BY B.TABLESPACE_NAME

2、查找占用大的對(duì)象

從dba_segments中找出占用SYSTEM表空間中排名前10位的大對(duì)象。

SELECT *
  FROM (SELECT SEGMENT_NAME, SUM(BYTES) / 1024 / 1024 MB
          FROM DBA_SEGMENTS
         WHERE TABLESPACE_NAME = 'SYSTEM'
         GROUP BY SEGMENT_NAME
         ORDER BY 2 DESC)
 WHERE ROWNUM < 10;

3、關(guān)閉審計(jì)(可選)

system表空間滿了以后,對(duì)審計(jì)表進(jìn)行清空,用新的審計(jì)表覆蓋舊的審計(jì)表,如果用處不大,我們可以選擇關(guān)閉審計(jì)功能,如下

sqlplus / nolog
connect sys/sys as sysdba
alter system set audit_trail='NONE' scope=spfile;
shutdown immediate;
startup;

4、清空審計(jì)日志

truncate table  SYS.AUD$;

5、給表空間增加數(shù)據(jù)文件

alter tablespace system add datafile '/data/orcl/system02.dbf' size 2G;
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI