免费在线a视频-免费在线观看a视频-免费在线观看大片影视大全-免费在线观看的视频-色播丁香-色播基地

Oralce數據庫巡檢SQL腳本

:2024年11月13日 超哥的IT私房菜
分享到:

Oracle數據庫巡檢SQL腳本檢查表空間使用情況、索引、約束、日志、實例狀態、表空間狀態、數據文件狀態等。性能最差的前10條SQL語句和一些擴展異常的對象需要特別關注。

Oralce數據庫巡檢SQL腳本

1 檢查表空間使用情況

2 檢查是否有 offline 狀態的表空間

3 在線日志是否存在小于 50M 的及狀態不正常

4 檢查鎖阻塞

5 查看是否有僵死進程

6 檢查是否有失效索引

7 檢查不起作用的約束

8 緩沖區命中率

9 數據字典命中率

10 庫緩存命中率

11 內存中的排序

12 磁盤中的排序

13 臨時空間使用率

14 檢查ORACLE實例狀態

15 檢查ORACLE表空間的狀態

16 檢查ORACLE所有數據文件狀態

17 檢查所有回滾段狀態

18 檢查一些擴展異常的對象

19 DISK READ最高的SQL語句的獲取

20 性能最差的前10條SQL

21 檢查運行很久的SQL

22 檢查碎片程度高的表

23 檢查死鎖及處理

24 失效的觸發器

25 失敗的JOB

Oralce數據庫巡檢SQL腳本

1 檢查表空間使用情況

SELECT B.TABLESPACE_NAME      TABLESPACE,

   A.EXTENT_MANAGEMENT    EXT_MGT,

   A.SEGMENT_SPACE_MANAGEMENT SEG_MGT,

   A.STATUS,

   A.LOGGING,

   B.TOTAL,

   B.FREE,

   B.USED_PCT

 FROM DBA_TABLESPACES A,

    (SELECT D.TABLESPACE_NAME TABLESPACE_NAME,

       ROUND((D.SUMBYTES / 1024 / 1024 / 1024), 2) || 'GB' TOTAL,

       ROUND(DECODE(F.SUMBYTES, NULL, 0, F.SUMBYTES) / 1024 / 1024 / 1024,

           2) || 'GB' FREE,

       ROUND((D.SUMBYTES - DECODE(F.SUMBYTES, NULL, 0, F.SUMBYTES)) * 100 /

          D.SUMBYTES,

           2) || '%' USED_PCT

     FROM (SELECT TABLESPACE_NAME, SUM(BYTES) SUMBYTES

         FROM DBA_FREE_SPACE

         GROUP BY TABLESPACE_NAME) F,

        (SELECT TABLESPACE_NAME,    

            SUM(BYTES) SUMBYTES

         FROM DBA_DATA_FILES

         GROUP BY TABLESPACE_NAME) D

     WHERE F.TABLESPACE_NAME(+) = D.TABLESPACE_NAME

     ORDER BY D.TABLESPACE_NAME) B

WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME;

2 檢查是否有 offline 狀態的表空間

SELECT FILE_ID AS ID,

   RELATIVE_FNO "FNO",

   ROUND(BYTES / 1024 / 1024) AS MBYTES,

   ROUND(MAXBYTES / 1024 / 1024) MAXMBYTES,

   BLOCKS,

   MAXBLOCKS,

   AUTOEXTENSIBLE "AUTO",

   INCREMENT_BY "INC",

   ROUND(USER_BYTES / 1024 / 1024) "NOW_MB",

   USER_BLOCKS,

    STATUS,

   ONLINE_STATUS "ONLINE_S"

 FROM DBA_DATA_FILES;

3 在線日志是否存在小于 50M 的及狀態不正常

SELECT A.GROUP#, A.STATUS, A.BYTES, B.MEMBER, A.ARCHIVED

 FROM V$LOG A, V$LOGFILE B

WHERE A.GROUP# = B.GROUP#;

4 檢查鎖阻塞

SELECT DECODE(REQUEST, 0, '阻塞者:', '等待者:') || SID SID,

   ID1,

   ID2,

   LMODE,

   REQUEST,

   TYPE

 FROM V$LOCK

WHERE (ID1, ID2, TYPE) IN

    (SELECT ID1, ID2, TYPE FROM V$LOCK WHERE REQUEST > 0)

ORDER BY ID1, REQUEST;

5 查看是否有僵死進程

SELECT SPID FROM V$PROCESS WHERE ADDR NOT IN (SELECT PADDR FROMV$SESSION);

6 檢查是否有失效索引

SELECT OWNER, A.INDEX_NAME, A.INDEX_TYPE, A.STATUS

 FROM DBA_INDEXES A

WHERE STATUS = 'UNUSABLE';

SELECT A.INDEX_NAME, A.PARTITION_NAME, A.TABLESPACE_NAME, A.STATUS

 FROM DBA_IND_PARTITIONS A

WHERE STATUS = 'UNUSABLE';

7 檢查不起作用的約束

SELECT OWNER, CONSTRAINT_NAME, TABLE_NAME, CONSTRAINT_TYPE, STATUS

 FROM DBA_CONSTRAINTS

WHERE STATUS = 'DISABLE'

  AND CONSTRAINT_TYPE = 'P';

8 緩沖區命中率

緩沖命中率應大于90%。

SELECT (1 - (SUM(DECODE(NAME, 'PHYSICAL READS', VALUE, 0)) /

    (SUM(DECODE(NAME, 'DB BLOCK GETS', VALUE, 0)) +

    SUM(DECODE(NAME, 'CONSISTENT GETS', VALUE, 0))))) * 100 "HIT RATIO"

 FROM V$SYSSTAT;

9 數據字典命中率

數據字典命中率應大于 95%。

SELECT (1 - (SUM(GETMISSES) / SUM(GETS))) * 100 "HIT RATIO" FROM V$ROWCACHE;

10 庫緩存命中率

庫緩存命中率應大于 95%。

SELECT SUM(PINS) / (SUM(PINS) + SUM(RELOADS)) * 100 "HIT RATIO" FROMV$LIBRARYCACHE;

11 內存中的排序

如果存在大量的磁盤排序,則表明檢查目前系統中消耗大量磁盤的 SQL 是否已經經過調整。

SELECT NAME, VALUE FROM V$SYSSTAT WHERE NAME LIKE '%SORTS%';

12 磁盤中的排序

檢查使用磁盤排序的會話信息,可以定位執行了大量磁盤排序的會話。

SELECT B.NAME, A.SID, A.VALUE

 FROM V$SESSTAT A, V$STATNAME B

WHERE A.STATISTIC# = B.STATISTIC#

  AND B.NAME = 'SORTS (DISK)'

  AND A.VALUE > 0

  AND ROWNUM < 10

ORDER BY A.VALUE DESC;

13 臨時空間使用率

SELECT * FROM V$TEMP_SPACE_HEADER;

14 檢查ORACLE實例狀態

其中“STATUS”表示ORACLE當前的實例狀態,必須為“OPEN”;“DATABASE_STATUS”表示ORACLE當前數據庫的狀態,必須為“ACTIVE”。

SELECT INSTANCE_NAME, HOST_NAME, STARTUP_TIME, STATUS, DATABASE_STATUS FROM V$INSTANCE;

15 檢查ORACLE表空間的狀態

輸出結果中STATUS應該都為ONLINE。

SELECT TABLESPACE_NAME, STATUS FROM DBA_TABLESPACES;

16 檢查ORACLE所有數據文件狀態

輸出結果中“STATUS”應該都為“ONLINE”。

SELECT NAME, STATUS FROM V$DATAFILE;

輸出結果中“STATUS”應該都為“AVAILABLE”。

SELECT FILE_NAME, STATUS FROM DBA_DATA_FILES;

17 檢查所有回滾段狀態

輸出結果中所有回滾段的“STATUS”應該為“ONLINE”。

SELECT SEGMENT_NAME, STATUS FROM DBA_ROLLBACK_SEGS;

18 檢查一些擴展異常的對象

如果有記錄返回,則這些對象的擴展已經快達到它定義時的最大擴展值,對于這些對象要修改它的存儲結構參數。

SELECT SEGMENT_NAME,

   SEGMENT_TYPE,

   TABLESPACE_NAME,

    (EXTENTS / MAX_EXTENTS) * 100 PERCENT

 FROM SYS.DBA_SEGMENTS

WHERE MAX_EXTENTS != 0

  AND (EXTENTS / MAX_EXTENTS) * 100 >= 95

ORDER BY PERCENT;

19 DISK READ最高的SQL語句的獲取

SELECT SQL_TEXT

 FROM (SELECT * FROM V$SQLAREA ORDER BY DISK_READS)

WHERE ROWNUM <= 5;

20 性能最差的前10條SQL

SELECT *

 FROM (SELECT PARSING_USER_ID EXECUTIONS,

       SORTS,

       COMMAND_TYPE,

       DISK_READS,

       SQL_TEXT

     FROM V$SQLAREA

     ORDER BY DISK_READS DESC)

WHERE ROWNUM < 10;

21 檢查運行很久的SQL

SELECT USERNAME,

   SID,

   OPNAME,

   ROUND(SOFAR * 100 / TOTALWORK, 0) || '%' AS PROGRESS,

   TIME_REMAINING,

   SQL_TEXT

 FROM V$SESSION_LONGOPS, V$SQL

WHERE TIME_REMAINING <> 0

  AND SQL_ADDRESS = ADDRESS

  AND SQL_HASH_VALUE = HASH_VALUE;

22 檢查碎片程度高的表

SELECT SEGMENT_NAME TABLE_NAME, COUNT(*) EXTENTS

 FROM DBA_SEGMENTS

WHERE OWNER NOT IN ('SYS', 'SYSTEM')

GROUP BY SEGMENT_NAME

HAVING COUNT(*) = (SELECT MAX(COUNT(*))

           FROM DBA_SEGMENTS

          GROUP BY SEGMENT_NAME);

23 檢查死鎖及處理

SELECT SID,

   SERIAL#,

   USERNAME,

   SCHEMANAME,

   OSUSER,

   MACHINE,

   TERMINAL,

   PROGRAM,

   OWNER,

   OBJECT_NAME,

   OBJECT_TYPE,

   O.OBJECT_ID

 FROM DBA_OBJECTS O, V$LOCKED_OBJECT L, V$SESSION S

WHERE O.OBJECT_ID = L.OBJECT_ID

  AND S.SID = L.SESSION_ID;

24 失效的觸發器

SELECT OWNER, TRIGGER_NAME, TABLE_NAME, STATUS

 FROM DBA_TRIGGERS

WHERE STATUS = 'DISABLED';

25 失敗的JOB

SELECT JOB, WHAT, LAST_DATE, NEXT_DATE, FAILURES, BROKEN

 FROM DBA_JOBS

WHERE SCHEMA_USER = 'USER';

點贊,你的認可是我創作的動力!
收藏,你的青睞是我努力的方向!
評論,你的意見是我進步的財富!

PS:因為公眾號平臺更改了推送規則,如果不想錯過內容,記得讀完點一下“在看”,加個“星標”,這樣每次新文章推送才會第一時間出現在你的訂閱列表里。點“在看”支持我吧!

原文來源:https://mp.weixin.qq.com/s/Fdtc7hZx9yJbj2WZvLuOAQ

[我要糾錯]
[編輯:宋聰喬 &發表于江蘇]
關鍵詞: Oralce 數據庫 巡檢 腳本 檢查表

來源:本文內容搜集或轉自各大網絡平臺,并已注明來源、出處,如果轉載侵犯您的版權或非授權發布,請聯系小編,我們會及時審核處理。
聲明:江蘇教育黃頁對文中觀點保持中立,對所包含內容的準確性、可靠性或者完整性不提供任何明示或暗示的保證,不對文章觀點負責,僅作分享之用,文章版權及插圖屬于原作者。

點個贊
0
踩一腳
0

您在閱讀:Oralce數據庫巡檢SQL腳本

Copyright©2013-2025 ?JSedu114 All Rights Reserved. 江蘇教育信息綜合發布查詢平臺保留所有權利

蘇公網安備32010402000125 蘇ICP備14051488號-3技術支持:南京博盛藍睿網絡科技有限公司

南京思必達教育科技有限公司版權所有   百度統計

主站蜘蛛池模板: 九九精品免费视频 | 丁香综合在线 | 免费在线观看黄网站 | 2015小明台湾永久区域免费 | 国产天堂亚洲精品 | 国产精品91av| 中文字幕第二页在线 | 日本三级带日本三级带黄首页 | 色狠狠成人综合网 | 国产一区二区三区不卡免费观看 | 成人a影片在线观看 | 免费精品国偷自产在线读大二 | 国产一级高清视频在线 | h片在线 | 中文字幕 亚洲 一区二区三区 | 五月天婷婷在线播放 | 91成人高清在线播放 | 亚洲一二三区视频 | 国内在线观看精品免费视频 | 欧美18-19| 一级一级黄色片 | 久久人人爽人人爽人人片va | 欧美黄色一级 | 777色狠狠一区二区三区香蕉 | 六月丁香在线视频 | 我想看一级毛片免费的 | 国产乱人视频在线播放不卡 | 在线亚洲天堂 | www.网站黄网站 | 一级片视频在线 | 亚洲精品高清久久 | 五月婷婷影院 | 很很色在线视频 | 亚洲字幕久久 | 91啦中文成人 | 欧美97久久人人模人人爽人人喊 | 亚洲伦理精品久久 | 欧美成人高清在线视频大全 | 青青草国产97免久久费观看 | 国产韩国精品一区二区三区久久 | 18gay丫男同志69 |
最熱文章
最新文章
  • 阿里云上云鉅惠,云產品享最低成本,有需要聯系,
  • 卡爾蔡司鏡片優惠店,鏡片價格低
  • 蘋果原裝手機殼