(ORACLE数据常见问题处理指南.doc
文本预览下载声明
常见问题处理指南
数据库篇
文件版本 V0.90 编写人 余新和 编写时间 2008-6-19
北京市天元网络技术股份有限公司
本文档属北京市天元网络技术股份有限公司所有
未经允许,不可全部或部分发表、复制或使用于任何目的。
文件修改记录
修改日期 版本号 修改内容 修改人 审核人 批准人/日期 目 录
1 文档目的 1
2 适用范围 1
3 Solaris 1
3.1 SUN主机问题 1
3.2 SUN阵列问题 2
3.3 SUN带库问题(含NBU) 2
3.4 SUN双机问题 7
文档目的
指导项目组人员处理常见的ORACLE问题及数据库信息查询
适用范围
项目组人员、项目经理、用户
数据库
数据库(oracle)常见问题处理
通过pid查找会话的详细信息
可以按照如下步骤查找某个进程的详细会话信息。? (os的pidv$process的spid ???v$session的addrv$process的paddr) 1.通过ps?-ef|grep?ora?或者prstat或者top查找pid? 本例通过ps?-ef|grep?ora找到进程13000? 2.--通过操作系统的pid查找sid? select?sid?from?v$session?where?paddr=(select?addr?from?v$process?where?spid=spid);? ----------------? Enter?value?for?spid:?13000? old?2:?where?paddr=(select?addr?from?v$process?where?spid=spid)? new?2:?where?paddr=(select?addr?from?v$process?where?spid=13000)? SID? ? 134? 3.? select?serial#,username,status,machine,program,LOGON_TIME?from?v$session?where?sid=‘sid‘? SQL?/? Enter?value?for?sid:?134? old?1:?select?serial#,username,status,machine,program,LOGON_TIME?from?v$session?where?sid=‘sid‘? new?1:?select?serial#,username,status,machine,program,LOGON_TIME?from?v$session?where?sid=‘134‘? SERIAL#?USERNAME?STATUS?MACHINE?PROGRAM?LOGON_TIME? ?????? 5228?OPTIMIZE?INACTIVE?WORKGROUP\METARNET-DENGMI?w3wp.exe?Jul?03?2006?11:52:04??
查询耗资源的SQL语句的方法:
1、把使用CPU资源比较高的pid放到下面语句中:
select sid,serial#,username,program,sql_hash_value,
to_char(logon_time,yyyy/mm/dd hh24:mi:ss) as login_time
from v$session
where paddr in ( select addr from v$process where spid=19328);
2、把查询到sql_hash_value的值放到下面的语句中:
select sql_text
from v$sqltext_with_newlines
where hash_value =2708444771
order by piece;
查询是否有相同的语句在对同一数据进行删除操作:
select s.username,s.program,s.machine,s.sid ,sql_text,last_load_timefrom v$session s,v$sql xwhere s.sql_address = x.address AND s.sql_hash_value = x.hash_value and (sql_text like delete
显示全部