create_user.sql
undef user_name
DROP USER &&user_name CASCADE;
CREATE USER &&user_name
PROFILE "DEFAULT"
IDENTIFIED BY &user_password
DEFAULT TABLESPACE "USERS"
TEMPORARY TABLESPACE "TEMP";
GRANT CONNECT TO &&user_name;
GRANT RESOURCE TO &&user_name;
GRANT SELECT_CATALOG_ROLE TO &&user_name;
GRANT EXECUTE_CATALOG_ROLE TO &&user_name;
GRANT ADVISOR TO &&user_name;
GRANT DEBUG ANY PROCEDURE TO &&user_name;
GRANT DEBUG CONNECT SESSION TO &&user_name;
GRANT CREATE VIEW TO &&user_name;
kill_session.sql
SELECT SID, SERIAL#, STATUS
FROM V$SESSION
WHERE USERNAME = 'MY_USER';
ALTER SYSTEM KILL SESSION '7,15';
set_up_fga.sql
CREATE TABLE emp AS SELECT * FROM scott.emp;
exec dbms_session.set_identifier('FGA_TEST');
BEGIN
dbms_fga.add_policy (
object_schema => sys_context('USERENV', 'CURRENT_SCHEMA'),
object_name => 'EMP',
statement_types => 'SELECT,INSERT,UPDATE,DELETE',
audit_condition => 'DEPTNO=30',
policy_name => 'MY_FGA_POLICY'
);
END;
/
DECLARE
l_ename varchar2(50);
l_emp_no number := 7654;
l_comm number := 600;
BEGIN
SELECT ename
INTO l_ename
FROM emp
WHERE empno = l_emp_no;
UPDATE emp
SET comm = l_comm
WHERE empno = l_emp_no;
DELETE FROM emp
WHERE empno = l_emp_no;
COMMIT;
END;
/
SELECT client_id, object_name as name, statement_type as type, sql_text, sql_bind
FROM dba_fga_audit_trail
ORDER by timestamp;
begin
dbms_fga.drop_policy (
object_schema => sys_context('USERENV', 'CURRENT_SCHEMA'),
object_name => 'EMP',
policy_nam e => 'MY_FGA_POLICY'
);
end;
/
DELETE FROM sys.fga_log$ WHERE policyname='MY_FGA_POLICY';
COMMIT;
buffer_cache_usage.sql
SELECT
o.object_name object_name,
o.object_type object_type,
count(1) num_blocks
FROM
dba_objects o,
v$bh bh
WHERE o.object_id = bh.objd
AND o.owner NOT IN ('SYS','SYSTEM')
GROUP BY o.object_name, o.object_type
ORDER BY count(1) DESC;
session_summary.sql
SELECT
username,
machine,
count(*) sessions,
rpad('*', count(*), '*') session_graph
FROM v$session
GROUP BY username, machine
ORDER BY username, machine NULLS LAST;
tablespace_contents.sql
SELECT
segment_name,
owner,
segment_type,
extents,
bytes / 1024 mbytes
FROM sys.dba_segments
WHERE tablespace_name = :tablespace
ORDER BY mbytes desc
tablespace_free_space.sql
SELECT tablespace_name,
TRUNC(SUM(maxbytes - bytes) /(1024 *1024)) mb_remaining
FROM dba_data_files
GROUP BY tablespace_name;