1、查表被鎖的方法
select c.sid,c.serial#,c.program,c.username,b.owner,c.event,a.locked_mode,b.object_name from
v$locked_object a,dba_objects b,v$session c where a.object_id=b.object_id and a.session_id=c.sid;
解鎖方法:
alter system kill session 'sid,serial#';
2、跟據topas執行結果得到消耗cpu或者內存較高的Oracle進程pid,然後執行下面的sql語句,這樣就能找出效率低下的sql語句:
select z.SQL_TEXT from v$process x, v$session y, v$sqltext z where x.ADDR = y.PADDR
and y.SQL_ADDRESS = z.ADDRESS and x.SPID = 'pid值' ;
3、記錄一條sql語句執行的時間
Set timing on
4、查看用戶權限
查看所有用戶
SELECT * FROM DBA_USERS;
查看用戶系統權限
SELECT * FROM DBA_SYS_PRIVS;
查看用戶對象或角色權限
SELECT * FROM DBA_TAB_PRIVS;
查看所有角色
SELECT * FROM DBA_ROLES;
查看用戶或角色所擁有的角色
SELECT * FROM DBA_ROLE_PRIVS;