рдЗрди рджрд┐рдиреЛрдВ рдкреНрд░рджрд░реНрд╢рди рдЯреНрдпреВрдирд┐рдВрдЧ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЕрдм рдкреНрд░рджрд░реНрд╢рди рдЯреНрдпреВрдирд┐рдВрдЧ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдореЗрдВ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреА рднреВрдорд┐рдХрд╛ рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо - рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рддрдХ рд╣реА рдХрдЯ рд░рд╣реА рд╣реИ: рд╡реЗ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рд╣реА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреА рдУрд░ рд░реБрдЦ рдХрд░рддреЗ рд╣реИрдВ, рдЬрдм рд╕рдорд╕реНрдпрд╛рдПрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдкрд░ рдкрд╣реБрдВрдЪ рдЪреБрдХреА рд╣реЛрддреА рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ "рдХрд▓" тАЛтАЛрд╣рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдФрд░ рдлрд┐рд░ рднреА рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдЕрдЧрд░ рд╡реЗ рдореБрдбрд╝рддреЗ рд╣реИрдВ, рдФрд░ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдкреНрд░рджрд░реНрд╢рди рдСрдбрд┐рдЯ рдФрд░ рддрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдорд╣рдВрдЧрд╛ рдФрд░ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдЦрд░реАрджрдХрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕реНрдердЧрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдирд┐рд░рд╛рд╢рд╛ рдЕрдХреНрд╕рд░ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрддреА рд╣реИ: рдЙрдиреНрд╣реЛрдВрдиреЗ 2-5 рдЧреБрдирд╛ рдЕрдзрд┐рдХ рдорд╣рдВрдЧрд╛ рдЙрдкрдХрд░рдг рдЦрд░реАрджрд╛, рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХреЗрд╡рд▓ 30-40% рдЬреАрддрд╛, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдкреВрд░реА рд╡реГрджреНрдзрд┐ рдХреБрдЫ рдорд╣реАрдиреЛрдВ рдореЗрдВ рдпрд╛ рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐, рдпрд╛ рдбреЗрдЯрд╛ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рд╡реГрджреНрдзрд┐, рддрд░реНрдХ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ рд╣реБрдИ рд╣реИред

рдФрд░ рдЕрдм, рдРрд╕реЗ рд╕рдордп рдореЗрдВ рдЬрдм рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЯ, рдкрд░реАрдХреНрд╖рдХ рдФрд░ DevOps рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рддреЗрдЬреА рд╕реЗ рдмрдврд╝ рд░рд╣реА рд╣реИ, рдФрд░ рдЬрд╛рд╡рд╛ рдХреЛрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рднреА рдХрд╛рдо рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ , рдзреАрд░реЗ-рдзреАрд░реЗ рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рд╕рдордп рдЖ рд░рд╣рд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд╕рд╛рде DBMS рдЗрддрдиреЗ рдЕрдзрд┐рдХ рд╕реНрдорд╛рд░реНрдЯ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рд▓реЗрдЦрд┐рдд рдФрд░ рдЕрдирд┐рд░реНрджрд┐рд╖реНрдЯ рджреЛрдиреЛрдВ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдФрд░ рдЕрдиреБрдХреВрд▓рди рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрд╛рд░реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдХрдИ рд▓реЗрдЦреЛрдВ рдХреЛ рдорд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдУрд░реЗрдХрд▓ рдХреЛ рд╕рдорд░реНрдкрд┐рдд рдкреНрд░рдореБрдЦ рд╕рдореНрдореЗрд▓рди рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рдЕрдиреБрд░реВрдкрддрд╛ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЬрдм рдбреЗрдЯрд╛рдмреЗрд╕ рдкреНрд░рд╢рд╛рд╕рдХ рдЕрдирдЧрд┐рдирдд рдЯреЙрдЧрд▓ рд╕реНрд╡рд┐рдЪ, рдмрдЯрди, рд▓рд╛рдЗрдЯ рдФрд░ рд╕реНрдХреНрд░реАрди рдХреЗ рд╕рд╛рде рд╣рд╡рд╛рдИ рдЬрд╣рд╛рдЬ рдХреЗ рдкрд╛рдпрд▓рдЯреЛрдВ рдХреЗ рд╕рдорд╛рди рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рджрд░реНрд╢рди рдЕрдиреБрдХреВрд▓рди рдХреА рд╕реВрдХреНрд╖реНрдорддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЙрдиреНрд╣реЗрдВ рд▓реЛрдб рдХрд░рдирд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрд╢реЛрднрдиреАрдп рд╣реИред

рдмреЗрд╢рдХ, рдкрд╛рдпрд▓рдЯреЛрдВ рдХреА рддрд░рд╣, рдбреАрдмреАрдП, рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рд░рд▓ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЙрдиреНрд╣реЗрдВ рдпрд╛ рддреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдирд┐рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рд╡рд┐рднрд┐рдиреНрди "рдЯреЙрдкреНрд╕" (рд╢реАрд░реНрд╖ рдШрдЯрдирд╛рдУрдВ, рд╢реАрд░реНрд╖ SQL, рд╢реАрд░реНрд╖ рдЦрдВрдбреЛрдВ ...) рдореЗрдВ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдЬреЛ MOS рдпрд╛ Google рдкрд░ рдвреВрдВрдврдирд╛ рдЖрд╕рд╛рди рд╣реИ, рднрд▓реЗ рд╣реА рд╡реЗ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реЛрдВред рдпрд╣ рддрдм рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛрддрд╛ рд╣реИ, рдЬрдм рд▓рдХреНрд╖рдг рднреА рд╕рд┐рд╕реНрдЯрдо рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреЗ рдкреАрдЫреЗ рдЫрд┐рдкреЗ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдУрд░реЗрдХрд▓ рдбреАрдмреАрдПрдордПрд╕ рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░ рдХреА рдЧрдИ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдЬрд╛рдирдХрд╛рд░реА рдХреА рднрд╛рд░реА рдорд╛рддреНрд░рд╛ рдХреЗ рдмреАрдЪ рдлреИрдВрдХрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЗрд╕рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЙрджрд╛рд╣рд░рдг рд╣реИ рдлрд╝рд┐рд▓реНрдЯрд░ рдФрд░ рдПрдХреНрд╕реЗрд╕ рдХреА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг: рдмрдбрд╝реА рдФрд░ рднрд░реА рд╣реБрдИ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ, рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдб рдХрд╛рдлреА рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рдлреИрд▓рд╛ рд╣реБрдЖ рд╣реИ (рд╡рд┐рднрд┐рдиреНрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЬреБрдбрд╝рдиреЗ рдХреЗ рд╕рд╛рде, рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдорд╛рдореВрд▓реА рдЕрдВрддрд░ рдХреЗ рд╕рд╛рде, рдЖрджрд┐), рдФрд░ рд╢реАрд░реНрд╖ рдЦрдВрдб рдХреБрдЫ рдЦрд╛рд╕ рдирд╣реАрдВ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ, рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ, "рдареАрдХ рд╣реИ, рд╣рд╛рдБ, рдЗрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗ рдбреЗрдЯрд╛ рдХреА рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЕрдзрд┐рдХ рд╣реЛрддреА рд╣реИ" ред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЖрдк SYS.COL_USAGE $: col_usage.sql рд╕реЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

col owner format a30 col oname format a30 heading "Object name" col cname format a30 heading "Column name" accept owner_mask prompt "Enter owner mask: "; accept tab_name prompt "Enter tab_name mask: "; accept col_name prompt "Enter col_name mask: "; SELECT a.username as owner ,o.name as oname ,c.name as cname ,u.equality_preds as equality_preds ,u.equijoin_preds as equijoin_preds ,u.nonequijoin_preds as nonequijoin_preds ,u.range_preds as range_preds ,u.like_preds as like_preds ,u.null_preds as null_preds ,to_char(u.timestamp, 'yyyy-mm-dd hh24:mi:ss') when FROM sys.col_usage$ u , sys.obj$ o , sys.col$ c , all_users a WHERE a.user_id = o.owner# AND u.obj# = o.obj# AND u.obj# = c.obj# AND u.intcol# = c.col# AND a.username like upper('&owner_mask') AND o.name like upper('&tab_name') AND c.name like upper('&col_name') ORDER BY a.username, o.name, c.name ; col owner clear; col oname clear; col cname clear; undef tab_name col_name owner_mask; 

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдкреВрд░реНрдг рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд┐рдзреЗрдп рдХрд╛ рд╕рдВрдпреЛрдЬрди рдирд╣реАрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, v $ active_session_history рдФрд░ v $ sql_plan рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╣рдорд╛рд░реА рд╕рд╣рд╛рдпрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

 with ash as ( select sql_id ,plan_hash_value ,table_name ,alias ,ACCESS_PREDICATES ,FILTER_PREDICATES ,count(*) cnt from ( select h.sql_id ,h.SQL_PLAN_HASH_VALUE plan_hash_value ,decode(p.OPERATION ,'TABLE ACCESS',p.OBJECT_OWNER||'.'||p.OBJECT_NAME ,(select i.TABLE_OWNER||'.'||i.TABLE_NAME from dba_indexes i where i.OWNER=p.OBJECT_OWNER and i.index_name=p.OBJECT_NAME) ) table_name ,OBJECT_ALIAS ALIAS ,p.ACCESS_PREDICATES ,p.FILTER_PREDICATES -- ,         : -- ,h.sql_plan_operation -- ,h.sql_plan_options -- ,decode(h.session_state,'ON CPU','ON CPU',h.event) event -- ,h.current_obj# from v$active_session_history h ,v$sql_plan p where h.sql_opname='SELECT' and h.IN_SQL_EXECUTION='Y' and h.sql_plan_operation in ('INDEX','TABLE ACCESS') and p.SQL_ID = h.sql_id and p.CHILD_NUMBER = h.SQL_CHILD_NUMBER and p.ID = h.SQL_PLAN_LINE_ID --     3 : -- and h.sample_time >= systimestamp - interval '3' hour ) --       : -- where table_name='&OWNER.&TABNAME' group by sql_id ,plan_hash_value ,table_name ,alias ,ACCESS_PREDICATES ,FILTER_PREDICATES ) ,agg_by_alias as ( select table_name ,regexp_substr(ALIAS,'^[^@]+') ALIAS ,listagg(ACCESS_PREDICATES,' ') within group(order by ACCESS_PREDICATES) ACCESS_PREDICATES ,listagg(FILTER_PREDICATES,' ') within group(order by FILTER_PREDICATES) FILTER_PREDICATES ,sum(cnt) cnt from ash group by sql_id ,plan_hash_value ,table_name ,alias ) ,agg as ( select table_name ,'ALIAS' alias ,replace(access_predicates,'"'||alias||'".','"ALIAS".') access_predicates ,replace(filter_predicates,'"'||alias||'".','"ALIAS".') filter_predicates ,sum(cnt) cnt from agg_by_alias group by table_name ,replace(access_predicates,'"'||alias||'".','"ALIAS".') ,replace(filter_predicates,'"'||alias||'".','"ALIAS".') ) ,cols as ( select table_name ,cols ,access_predicates ,filter_predicates ,sum(cnt)over(partition by table_name,cols) total_by_cols ,cnt from agg ,xmltable( 'string-join(for $c in /ROWSET/ROW/COL order by $c return $c,",")' passing xmltype( cursor( (select distinct nvl( regexp_substr( access_predicates||' '||filter_predicates ,'("'||alias||'"\.|[^.]|^)"([A-Z0-9#_$]+)"([^.]|$)' ,1 ,level ,'i',2 ),' ') col from dual connect by level<=regexp_count( access_predicates||' '||filter_predicates ,'("'||alias||'"\.|[^.]|^)"([A-Z0-9#_$]+)"([^.]|$)' ) ) )) columns cols varchar2(400) path '.' )(+) order by total_by_cols desc, table_name, cnt desc ) select table_name ,cols ,sum(cnt)over(partition by table_name,cols) total_by_cols ,access_predicates ,filter_predicates ,cnt from cols where rownum<=50 order by total_by_cols desc, table_name, cnt desc; 

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рдХреНрд╡реЗрд░реА рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рд╢реАрд░реНрд╖ 50 рдЦреЛрдЬ рдХреЙрд▓рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд┐рдЫрд▓реЗ 3 рдШрдВрдЯреЛрдВ рдореЗрдВ ASH рд╣рд┐рдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЦреБрдж рдХреЛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдПрдПрд╕рдПрдЪ рдХреЗрд╡рд▓ рд╣рд░ рд╕реЗрдХрдВрдб рдореЗрдВ рд╕реНрдиреИрдкрд╢реЙрдЯ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рд▓реЛрдб рдХрд┐рдП рдЧрдП рдард┐рдХрд╛рдиреЛрдВ рдкрд░ рдирдореВрдирд╛ рдмрд╣реБрдд рдкреНрд░рддрд┐рдирд┐рдзрд┐ рд╣реИред рдпрд╣ рдХрдИ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

  • рдХрд░реНрдирд▓ рдлрд╝реАрд▓реНрдб - рдЦреЛрдЬ рдХреЙрд▓рдо рдХреЛ рд╕реНрд╡рдпрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрди рдХреЙрд▓рдореЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреБрд▓ рдпреЛрдЧреЛрдВ рдХрд╛ рдпреЛрдЧ рд╣реИред
  • рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рдкрд░реНрдпрд╛рдкреНрдд рдорд╛рд░реНрдХрд░ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрдИ рдПрдХ-рд╕рдордп рдХреЗ рдлреБрд▓рд╕реНрдХреИрди рдЖрд╕рд╛рдиреА рд╕реЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдмрд░реНрдмрд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЙрдирдХреА рдЖрд╡реГрддреНрддрд┐ (v $ sqlstats, dba_hist_sqlstat)
  • SQL_ID рдХреЗ рдЕрдВрджрд░ OBJECT_ALIAS рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдирд╛, plan_hash_value рд╡рд╕реНрддреБ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реВрдЪрдХрд╛рдВрдХ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрд╛рд▓рд┐рдХрд╛ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдкрд░, рд╡рд┐рдзреЗрдп рдХреЛ рдпреЛрдЬрдирд╛ рдХреА рд╡рд┐рднрд┐рдиреНрди рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:
    рдЫрд╡рд┐

рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЕрдиреНрдп рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд┐рднрд╛рдЬрди рдпрд╛ рдЕрдкреЗрдХреНрд╖рд╛рдУрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдПред рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдЖрдБрдХрдбрд╝реЛрдВ рдФрд░ рдЗрд╕рдХреЗ рдЕрдиреБрдХреНрд░рдорд┐рдд, рд╕рд╛рдорд╛рдиреНрдп рдбреЗрдЯрд╛ рдпреЛрдЬрдирд╛ рдФрд░ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рдпреБрдЧреНрдорд┐рдд, рдЖрдк рд╕рдорд╛рдзрд╛рди рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдпрд╛ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рдкрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рд╡рд┐рднрд╛рдЬрди рдХреЗ рд╡рд┐рдХрд▓реНрдк рдпрд╛ рдЕрдиреБрдХреНрд░рдордг рдХреЛ рдмрджрд▓рддреЗ рд╣реБрдПред

SQL * рдиреЗрдЯ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдирд╛ рднреА рдЕрдХреНрд╕рд░ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХрдИ рд╕реВрдХреНрд╖реНрдорддрд╛рдПрдВ рднреА рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: fet-size, SQLNET.COMPRESSION, рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдбреЗрдЯрд╛рдЯрд┐рдкреНрд╕, рдЬреЛ рд░рд╛рдЙрдВрдбрдЯреНрд░рд┐рдк рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЖрджрд┐, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╖рдп рд╣реИред

рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдЕрдм рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреЗрд░реА рдХреЗ рдкреНрд░рддрд┐ рдХрдо рд╕рд╣рд┐рд╖реНрдгреБ рд╣реЛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдПрдХ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛рддреНрдордХ рд▓рд╛рдн рдмрди рд░рд╣рд╛ рд╣реИред

Source: https://habr.com/ru/post/hi451676/


All Articles