add scripts for space and xplan
This commit is contained in:
parent
8eb106f8a4
commit
0dbe8613b3
14
Mortan/pln.sql
Normal file
14
Mortan/pln.sql
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
SELECT xplan.*
|
||||||
|
FROM
|
||||||
|
(
|
||||||
|
select max(sql_id) keep
|
||||||
|
(dense_rank last order by last_active_time) sql_id
|
||||||
|
, max(child_number) keep
|
||||||
|
(dense_rank last order by last_active_time) child_number
|
||||||
|
from v$sql
|
||||||
|
where upper(sql_text) like '%&1%'
|
||||||
|
and upper(sql_text) not like '%FROM V$SQL WHERE UPPER(SQL_TEXT) LIKE %'
|
||||||
|
) sqlinfo,
|
||||||
|
table(DBMS_XPLAN.DISPLAY_CURSOR(sqlinfo.sql_id, sqlinfo.child_number, 'ALLSTATS LAST')) xplan
|
||||||
|
/
|
||||||
|
|
||||||
41
Mortan/space_usage.sql
Normal file
41
Mortan/space_usage.sql
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
-- space_usage.sql
|
||||||
|
|
||||||
|
declare
|
||||||
|
l_tabname varchar2(30) := '&1';
|
||||||
|
l_fs1_bytes number;
|
||||||
|
l_fs2_bytes number;
|
||||||
|
l_fs3_bytes number;
|
||||||
|
l_fs4_bytes number;
|
||||||
|
l_fs1_blocks number;
|
||||||
|
l_fs2_blocks number;
|
||||||
|
l_fs3_blocks number;
|
||||||
|
l_fs4_blocks number;
|
||||||
|
l_full_bytes number;
|
||||||
|
l_full_blocks number;
|
||||||
|
l_unformatted_bytes number;
|
||||||
|
l_unformatted_blocks number;
|
||||||
|
begin
|
||||||
|
dbms_space.space_usage(
|
||||||
|
segment_owner => user,
|
||||||
|
segment_name => l_tabname,
|
||||||
|
segment_type => 'TABLE',
|
||||||
|
fs1_bytes => l_fs1_bytes,
|
||||||
|
fs1_blocks => l_fs1_blocks,
|
||||||
|
fs2_bytes => l_fs2_bytes,
|
||||||
|
fs2_blocks => l_fs2_blocks,
|
||||||
|
fs3_bytes => l_fs3_bytes,
|
||||||
|
fs3_blocks => l_fs3_blocks,
|
||||||
|
fs4_bytes => l_fs4_bytes,
|
||||||
|
fs4_blocks => l_fs4_blocks,
|
||||||
|
full_bytes => l_full_bytes,
|
||||||
|
full_blocks => l_full_blocks,
|
||||||
|
unformatted_blocks => l_unformatted_blocks,
|
||||||
|
unformatted_bytes => l_unformatted_bytes
|
||||||
|
);
|
||||||
|
dbms_output.put_line('0-25% Free = '||l_fs1_blocks||' Bytes = '||l_fs1_bytes);
|
||||||
|
dbms_output.put_line('25-50% Free = '||l_fs2_blocks||' Bytes = '||l_fs2_bytes);
|
||||||
|
dbms_output.put_line('50-75% Free = '||l_fs3_blocks||' Bytes = '||l_fs3_bytes);
|
||||||
|
dbms_output.put_line('75-100% Free = '||l_fs4_blocks||' Bytes = '||l_fs4_bytes);
|
||||||
|
dbms_output.put_line('Full Blocks = '||l_full_blocks||' Bytes = '||l_full_bytes);
|
||||||
|
end;
|
||||||
|
/
|
||||||
12
Mortan/xpext..sql
Normal file
12
Mortan/xpext..sql
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
/* Listing 6-6 */
|
||||||
|
|
||||||
|
select id, parent_id, operation
|
||||||
|
from (
|
||||||
|
select level lvl, id, parent_id, lpad(' ',level) || operation || ' ' || options
|
||||||
|
|| ' ' || object_name as operation
|
||||||
|
from plan_table
|
||||||
|
start with id = 0
|
||||||
|
connect by prior id = parent_id
|
||||||
|
)
|
||||||
|
order by lvl desc, id;
|
||||||
|
|
||||||
13882
Mortan/xplan_ash.sql
Normal file
13882
Mortan/xplan_ash.sql
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user