enq: SS - contention

一、幾個查詢
  1. 什么是 SS 鎖 以及 enq: SS - contention 等待事件
  • 查詢告警相關(guān)信息
select * from v$lock_type where type='SS';
  • 查詢等待事件信息
select * from v$event_name where name='enq: SS - contention';
  1. 查詢活動會話
  • 查詢活動會話信息饲帅,獲取堵塞信息
SELECT INST_ID,
       SID
       || ','
       || SERIAL#                SID#,
       MACHINE,
       USERNAME,
       TYPE
       EVENT,
       STATE,
       WAIT_TIME_MICRO,
       BLOCKING_INSTANCE
       || ( CASE
              WHEN BLOCKING_INSTANCE IS NULL THEN NULL
              ELSE ','
            END )
       || BLOCKING_SESSION       BL_SESS,
       FINAL_BLOCKING_INSTANCE
       || ( CASE
              WHEN FINAL_BLOCKING_INSTANCE IS NULL THEN NULL
              ELSE ','
            END )
       || FINAL_BLOCKING_SESSION FI_BL_SESS,
       FINAL_BLOCKING_SESSION_STATUS,
       STATUS,
       COMMAND,
       SQL_ID,
       SQL_CHILD_NUMBER,
       PREV_SQL_ID,
       PREV_CHILD_NUMBER,
       WAIT_CLASS,
       WAIT_TIME,
       SECONDS_IN_WAIT,
       TIME_REMAINING_MICRO,
       TIME_SINCE_LAST_WAIT_MICRO,
       P1,
       P1RAW,
       P2,
       P2RAW,
       P3,
       P3RAW,
       PADDR,
       TADDR,
       SADDR,
       OSUSER,
       PROCESS,
       CREATOR_ADDR,
       AUDSID,
       ROW_WAIT_OBJ#,
       ROW_WAIT_FILE#,
       ROW_WAIT_BLOCK#,
       ROW_WAIT_ROW#,
       PROGRAM,
       COMMAND,
       PLSQL_ENTRY_OBJECT_ID,
       PLSQL_ENTRY_SUBPROGRAM_ID,
       PLSQL_OBJECT_ID,
       PLSQL_SUBPROGRAM_ID,
       SQL_EXEC_START,
       LOGON_TIME,
       CLIENT_IDENTIFIER,
       SERVICE_NAME,
       RESOURCE_CONSUMER_GROUP
FROM   GV$SESSION
WHERE  WAIT_CLASS# <> 6
ORDER  BY BLOCKING_INSTANCE NULLS FIRST,
          BLOCKING_SESSION,
          EVENT,
          INST_ID,
          SID;
  • 查詢sql temp信息
SELECT instance_number,
       sample_time,
       session_id
       || ( CASE
              WHEN session_id IS NULL THEN NULL
              ELSE ','
            END )
       || session_serial#
       || ( CASE
              WHEN session_serial# IS NULL THEN NULL
              ELSE ','
            END )
       || instance_number                 sid#,
       du.username,
       sql_id,
       sql_opname,
       sql_exec_start,
       plsql_entry_object_id,
       event,
       blocking_session
       || ( CASE
              WHEN blocking_session IS NULL THEN NULL
              ELSE ','
            END )
       || blocking_session_serial#
       || ( CASE
              WHEN blocking_session_serial# IS NULL THEN NULL
              ELSE ','
            END )
       || blocking_inst_id                blk_sid,
       program,
       machine
       || ':'
       || port,
       delta_read_io_bytes,
       delta_write_io_bytes,
       pga_allocated / 1024 / 1024        pga_mb,
       temp_space_allocated / 1024 / 1024 temp_MB
FROM   dba_hist_active_sess_history ash,
       dba_users du
WHERE  sample_time >= To_timestamp ('20190909 1720', 'yyyymmdd hh24mi')
       AND sample_time <= To_timestamp ('20190909 1730', 'yyyymmdd hh24mi')
       AND temp_space_allocated IS NOT NULL
       AND ash.user_id = du.user_id
ORDER  BY temp_space_allocated DESC;
  • 查詢占用temp 較大的sql
SELECT sql_id,
       Avg (temp_space_allocated / 1024 / 1024 / 1024) temp_gb
FROM   dba_hist_active_sess_history ash,
       dba_users du
WHERE  sample_time >= To_timestamp ('20190909 1720', 'yyyymmdd hh24mi')
       AND sample_time <= To_timestamp ('20190909 1730', 'yyyymmdd hh24mi')
       AND temp_space_allocated IS NOT NULL
       AND ash.user_id = du.user_id
GROUP  BY sql_id
ORDER  BY temp_gb DESC;
  1. 查詢sql的具體的信息
  • 查詢包垮耳、存儲伟端、函數(shù)等的具體信息
select * from dba_source where name='&name';
  • 查看對象信息
select * from dba_objects where object_id='&obj_id';
  • 查看sql信息
select * from v$sql where sql_id='&sql_id';
  • 查詢用戶及其temp信息
select * from dba_users where temporary_tablespace='&tsp';
  • 查詢塊大小
select value from v$parameter where name='db_block_size';
select block_size from dba_tablespaces where tablespace_name='&tbs_name';
  1. 查詢 temp 表空間大小
  • 查詢 temp 表空間總大小
SELECT tablespace_name,
       Sum (BYTES) / 1024 / 1024 / 1024 gb
FROM   dba_temp_files
GROUP  BY tablespace_name;
SELECT tablespace_name,
       Sum (bytes_used) / 1024 / 1024 / 1024 used_gb,
       Sum (blocks_used)                     used_blocks,
       Sum (bytes_free) / 1024 / 1024 / 1024 free_gb,
       Sum (blocks_free)                     free_blocks
FROM   v$temp_space_header
GROUP  BY tablespace_name;
  • 查看 temp 在各節(jié)點分布使用情況
    不帶百分?jǐn)?shù)版
SELECT inst_id,
       tablespace_name,
       Sum (extents_cached)                    total_extents,
       Sum (extents_used)                      used_extents,
       Sum(blocks_cached)                      total_blocks,
       Sum(blocks_used)                        used_blocks,
       Sum (bytes_cached) / 1024 / 1024 / 1024 cached_gb,
       Sum (bytes_used) / 1024 / 1024 / 1024   used_gb
FROM   gv$temp_extent_pool
GROUP  BY inst_id,
          tablespace_name
ORDER  BY inst_id,
          tablespace_name;

SELECT inst_id,
       tablespace_name,
       total_extents,
       used_extents,
       total_blocks,
       used_blocks
FROM   gv$sort_segment

帶百分?jǐn)?shù)版(總利用率)

SELECT c.tablespace_name,
       c.bytes / 1024 / 1024 / 1024                    total_size_gb,
       d.bytes_used / 1024 / 1024 / 1024               used_size_gb,
       ( c.bytes - d.bytes_used ) / 1024 / 1024 / 1024 free_size_gb,
       d.bytes_used * 100 / c.bytes                    percent_usage
FROM   (SELECT tablespace_name,
               Sum(bytes) bytes
        FROM   dba_temp_files
        GROUP  BY tablespace_name) c,
       (SELECT tablespace_name,
               Sum(bytes_used) bytes_used
        FROM   gv$temp_extent_pool
        GROUP  BY tablespace_name) d
WHERE  c.tablespace_name = d.tablespace_name;
SELECT a.tablespace_name,
       a.total_size_gb,
       b.used_size_gb,
       a.total_size_gb - b.used_size_gb       free_size_gb,
       b.used_size_gb / a.total_size_gb * 100 AS percent_usage
FROM   (SELECT tablespace_name,
               Sum(bytes) / 1024 / 1024 / 1024 total_size_gb
        FROM   dba_temp_files
        GROUP  BY tablespace_name) a,
       (SELECT s_s.tablespace_name,
               Sum(used_blocks * block_size) / 1024 / 1024 / 1024 used_size_gb
        FROM   gv$sort_segment s_s,
               dba_tablespaces tbs
        WHERE  tbs.tablespace_name = s_s.tablespace_name
               AND tbs.contents = 'TEMPORARY'
        GROUP  BY s_s.tablespace_name) b
WHERE  a.tablespace_name = b.tablespace_name;
  • 帶百分?jǐn)?shù)版(各節(jié)點利用率)
SELECT inst_id,
       tablespace_name,
       Sum (bytes_cached) / 1024 / 1024 / 1024              total_size_gb,
       Sum (bytes_used) / 1024 / 1024 / 1024                used_size_gb,
       Sum (bytes_cached - bytes_used) / 1024 / 1024 / 1024 free_size_gb,
       Sum(bytes_used) * 100 / Sum(bytes_cached)            percent_usage
FROM   gv$temp_extent_pool
GROUP  BY inst_id,
          tablespace_name
ORDER  BY tablespace_name,
          inst_id;
SELECT inst_id,
       gs.tablespace_name,
       total_blocks * block_size / 1024 / 1024 / 1024                   total_size_gb,
       used_blocks * block_size / 1024 / 1024 / 1024                    used_size_gb,
       ( total_blocks - used_blocks ) * block_size / 1024 / 1024 / 1024 free_size_gb,
       used_blocks * 100 / total_blocks                                 percent_usage
FROM   gv$sort_segment gs,
       dba_tablespaces dt
WHERE  gs.tablespace_name = dt.tablespace_name
ORDER  BY tablespace_name,
          inst_id;
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市垛膝,隨后出現(xiàn)的幾起案子肺稀,更是在濱河造成了極大的恐慌第股,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件话原,死亡現(xiàn)場離奇詭異炸茧,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)稿静,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辕狰,“玉大人改备,你說我怎么就攤上這事÷叮” “怎么了悬钳?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵盐捷,是天一觀的道長。 經(jīng)常有香客問我默勾,道長碉渡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任母剥,我火速辦了婚禮滞诺,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘环疼。我一直安慰自己习霹,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布炫隶。 她就那樣靜靜地躺著淋叶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪伪阶。 梳的紋絲不亂的頭發(fā)上煞檩,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天,我揣著相機(jī)與錄音栅贴,去河邊找鬼斟湃。 笑死,一個胖子當(dāng)著我的面吹牛筹误,可吹牛的內(nèi)容都是我干的桐早。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼厨剪,長吁一口氣:“原來是場噩夢啊……” “哼哄酝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起祷膳,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤陶衅,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后直晨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體搀军,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年勇皇,在試婚紗的時候發(fā)現(xiàn)自己被綠了罩句。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡敛摘,死狀恐怖门烂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤屯远,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布蔓姚,位于F島的核電站,受9級特大地震影響慨丐,放射性物質(zhì)發(fā)生泄漏坡脐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一房揭、第九天 我趴在偏房一處隱蔽的房頂上張望备闲。 院中可真熱鬧,春花似錦崩溪、人聲如沸浅役。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽觉既。三九已至,卻和暖如春乳幸,著一層夾襖步出監(jiān)牢的瞬間瞪讼,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工粹断, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留符欠,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓瓶埋,卻偏偏與公主長得像希柿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子养筒,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容