免费在线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技術支持:南京博盛藍睿網絡科技有限公司

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

主站蜘蛛池模板: 亚洲综合色网 | 亚洲黄色片视频 | 亚洲精品福利在线观看 | 免费在线看黄 | 婷婷深爱网| 三级欧美日韩 | 在线观看日批视频 | 日韩高清免费在线观看 | 成人亚洲精品 | 亚洲一区二区成人 | 视频日韩p影院永久免费 | 一a一片一级一片啪啪 | 亚洲九九夜夜 | 国产视频你懂的 | 日本不卡二区 | 成在线人免费视频一区二区三区 | aⅴ一区二区三区无卡无码 aⅴ在线免费观看 | 一级午夜免费视频 | 欧美成人久久 | 丁香五月缴情综合网 | 久草新在线观看 | 国产最猛性xxxxxx69交 | 在线视频影院 | 在线观看视频一区 | 欧美无内丝袜大尺度福利写真 | 亚洲综合色一区二区三区另类 | 日韩欧美三区 | 国产精品视频无圣光一区 | 一级黄色毛片视频 | 一二三区乱码一区二区三区码 | 亚洲码一区二区三区 | 欧美成人全部视频 | 亚洲国产爱 | 欧美a在线视频 | 曰本还a大片免费无播放器 曰本三级香港三级三级人 孕交videos小孕妇xx中文 | 九九久久精品这里久久网 | 欧美激情精品久久久久 | 国产精品久久精品视 | 国产精品一区二区在线观看 | 亚洲欧美日韩精品久久亚洲区色播 | 在线国产片 |
最熱文章
最新文章
  • 阿里云上云鉅惠,云產品享最低成本,有需要聯系,
  • 卡爾蔡司鏡片優惠店,鏡片價格低
  • 蘋果原裝手機殼