




















http://www.fwvv.net/info/2008/07/01/20080701-63249.shtml
1. 求当前会话的SID,SERIAL#
SELECT Sid, Serial# FROM V$session WHERE Audsid = Sys_Context('USERENV', 'SESSIONID');
2. 查询session的OS进程ID
Code
3. 根据sid查看对应连接正在运行的sql
Code
4. 查找object为哪些进程所用
Code
5.查看有哪些用户连接
Code
6、根据v.sid查看对应连接的资源占用等情况
SELECT n.NAME,
v.VALUE,
n.CLASS,
n.Statistic#
FROM V$statname n, V$sesstat v
WHERE v.Sid = &sid
AND v.Statistic# = n.Statistic#
ORDER BY n.CLASS, n.Statistic#
7、查询耗资源的进程(top session)
Code
8、查看锁(lock)情况
Code
9、查看等待(wait)情况
SELECT Ws.CLASS,
Ws.COUNT COUNT,
SUM(Ss.VALUE) Sum_Value
FROM V$waitstat Ws, V$sysstat Ss
WHERE Ss.NAME IN ('db block gets', 'consistent gets')
GROUP BY Ws.CLASS, Ws.COUNT
10、求process/session的状态
SELECT p.Pid,
p.Spid,
s.Program,
s.Sid,
s.Serial#
FROM V$process p, V$session s
WHERE s.Paddr = p.Addr;
11、求谁阻塞了某个session(10g)
SELECT Sid,
Username,
Event,
Blocking_Session,
Seconds_In_Wait,
Wait_Time
FROM V$session
WHERE State IN ('WAITING')
AND Wait_Class != 'Idle';
12、查会话的阻塞
Code
13、求等待的事件及会话信息/求会话的等待及会话信息
Code
14、求会话等待的file_id/block_id
Code
15、求会话等待的对象
SELECT Owner,
Segment_Name,
Segment_Type
FROM Dba_Extents
WHERE File_Id = &File_Id
AND &Block_Id
BETWEEN Block_Id AND Block_Id + Blocks - 1;
16、求出某个进程,并对它进行跟踪
Code
17、求当前session的跟踪文件
Code
18、求出锁定的对象
SELECT Do.Object_Name,
Session_Id,
Process,
Locked_Mode
FROM V$locked_Object Lo, Dba_Objects Do
WHERE Lo.Object_Id = Do.Object_Id;
19、查看游标状态
Code
20、查看内存
Code
21.查看当前用户
select sys_context('userenv','ip_address') from dual;
22. 从V$SQLAREA中查询最占用资源的查询,
用buffer_gets列来替换disk_reads列可以得到占用最多内存的sql语句的相关信息。
Code
23.列出使用频率最高的5个查询:
select sql_text,executions
from (select sql_text,
executions,
rank() over
(order by executions desc) exec_rank
from v$sql)
where exec_rank <=5;
24. 消耗磁盘读取最多的sql top5:
Code
25.找出需要大量缓冲读取(逻辑读)操作的查询:
Code
25,查看某张表实际物理大小
Code
26.查询当前会话数
SELECT sid,program,prev_exec_start,t.LOGON_TIME FROM V$SESSION t where username='QTEST' order by logon_time desc
--优化分析
ANALYZE TABLE QTEST.STOCK_TEMP_DAY_HK COMPUTE STATISTICS;
ANALYZE INDEX QTEST.PK_STOCK_TEMP_DAY_SZ ESTIMATE STATISTICS;
--测试连接数
show parameter processes;
alter system set processes=1000 scope=spfile;
create pfile from spfile;
reboot
select COUNT(DISTINCT SID) from v$open_cursor where user_name='QTEST' ORDER BY SID;
SELECT * FROM V$SESSION
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。