- 浏览: 124941 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
willse:
嘿嘿,很好很强大! 有意思............
[转]用ReflectionFactory实现不调用构造参数创建对象 -
phoenix_sun:
谢谢,很完正,是我需要的例子,多谢
使用Spring的JdbcTemplate调用Oracle的存储过程 -
fly533:
不错,非常完整!
使用Spring的JdbcTemplate调用Oracle的存储过程 -
lxc914_java:
,不错,很详细。
[转]详解JAVA POI导出EXCEL报表的操作(包括各种格式及样式的实现)
--查看数据库响应状况
select *
from SYS.V_$SYSMETRIC
where METRIC_NAME IN ( 'Database CPU Time Ratio',
'Database Wait Time Ratio')
AND INTSIZE_CSEC = (select max(INTSIZE_CSEC) from
SYS.V_$SYSMETRIC)
--查看数据库的总性能
select *
from sys.v_$sysmetric_history
where metric_name = 'Database CPU Time Ratio'
order by 1
--获得数据库整体性能效率的最大、最小和平均值
select CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
'SQL Service Response Time (secs)'
WHEN 'Response Time Per Txn' then
'Response Time Per Txn (secs)'
ELSE
METRIC_NAME
END METRIC_NAME,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
ROUND((MINVAL / 100), 2)
WHEN 'Response Time Per Txn' then
ROUND((MINVAL / 100), 2)
ELSE
MINVAL
END MININUM,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
ROUND((MAXVAL / 100), 2)
WHEN 'Response Time Per Txn' then
ROUND((MAXVAL / 100), 2)
ELSE
MAXVAL
END MAXIMUM,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
ROUND((AVERAGE / 100), 2)
WHEN 'Response Time Per Txn' then
ROUND((AVERAGE / 100), 2)
ELSE
AVERAGE
END AVERAGE
from SYS.V_$SYSMETRIC_SUMMARY
where METRIC_NAME in
('CPU Usage Per Sec', 'CPU Usage Per Txn', 'Database CPU Time Ratio',
'Database Wait Time Ratio', 'Executions Per Sec',
'Executions Per Txn', 'Response Time Per Txn',
'SQL Service Response Time', 'User Transaction Per Sec')
ORDER BY 1
--查看究竟是什么类型的用户活动影响数据库的响应速度,找到相应的主要花费时间处理的部分
select case db_stat_name
when 'parse time elapsed' then
'soft parse time'
else
db_stat_name
end db_stat_name,
case db_stat_name
when 'sql execute elapsed time' then
time_secs - plsql_time
when 'parse time elapsed' then
time_secs - hard_parse_time
else
time_secs
end time_secs,
case db_stat_name
when 'sql execute elapsed time' then
round(100 * (time_secs - plsql_time) / db_time, 2)
when 'parse time elapsed' then
round(100 * (time_secs - hard_parse_time) / db_time, 2)
else
round(100 * time_secs / db_time, 2)
end pct_time
from (select stat_name db_stat_name, round((value / 1000000), 3) time_secs
from sys.v_$sys_time_model
where stat_name not in ('DB time', 'background elapsed time',
'background cpu time', 'DB CPU')),
(select round((value / 1000000), 3) db_time
from sys.v_$sys_time_model
where stat_name = 'DB time'),
(select round((value / 1000000), 3) plsql_time
from sys.v_$sys_time_model
where stat_name = 'PL/SQL execution elapsed time'),
(select round((value / 1000000), 3) hard_parse_time
from sys.v_$sys_time_model
where stat_name = 'hard parse elapsed time')
order by 2 desc
--等待时间中的等待事件,等待的文件,等待的对象
select sql_id,
event as "等待事件",
time_waited,
owner,
object_name as "等待的对象",
current_file# as "等待的文件",
current_block#
from sys.v_$active_session_history a, sys.dba_objects b
where a.current_obj# = b.object_id
and time_waited <> 0
--前5位用户I/O等待最高的SQL语句
select *
from (select sql_text, sql_id, elapsed_time, cpu_time, user_io_wait_time
from sys.v_$sqlarea
order by 5 desc)
where rownum < 6
--查看等待事件来找出等待和瓶颈,找出大部分的整体等待时间
select WAIT_CLASS,
TOTAL_WAITS,
round(100 * (TOTAL_WAITS / SUM_WAITS), 2) PCT_WAITS,
ROUND((TIME_WAITED / 100), 2) TIME_WAITED_SECS,
round(100 * (TIME_WAITED / SUM_TIME), 2) PCT_TIME
from (select WAIT_CLASS, TOTAL_WAITS, TIME_WAITED
from V$SYSTEM_WAIT_CLASS
where WAIT_CLASS != 'Idle'),
(select sum(TOTAL_WAITS) SUM_WAITS, sum(TIME_WAITED) SUM_TIME
from V$SYSTEM_WAIT_CLASS
where WAIT_CLASS != 'Idle')
order by 5 desc
--最新的一个小时等待类型
select a.sid,
b.username,
a.wait_class,
a.total_waits,
round((a.time_waited / 100), 2) time_waited_secs
from sys.v_$session_wait_class a, sys.v_$session b
where b.sid = a.sid
and b.username is not null
and a.wait_class != 'Idle'
order by 5 desc
--找出耗费资源比较多的SQL语句
SELECT first_load_time,
SQL_TEXT,
buffer_gets,
executions,
buffer_gets/executions AVG
FROM v$sqlarea
WHERE executions>0
AND buffer_gets > 100000
ORDER BY 5
--找出需要大量缓冲读取(逻辑读)操作的查询
select *
from (select sql_text,
buffer_gets,
dense_rank() over(order by buffer_gets desc) buffer_gets_rank,optimizer_cost
from v$sql)
where buffer_gets_rank <= 10
--V$SQL是内存共享SQL区域中已经解析的SQL语句。
--列出使用频率最高的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
--消耗磁盘读取最多的sql
select disk_reads, sql_text
from (select sql_text,
disk_reads,
dense_rank() over(order by disk_reads desc) disk_reads_rank
from v$sql)
where disk_reads_rank <= 5
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/bluestream/archive/2008/09/28/2990631.aspx
select *
from SYS.V_$SYSMETRIC
where METRIC_NAME IN ( 'Database CPU Time Ratio',
'Database Wait Time Ratio')
AND INTSIZE_CSEC = (select max(INTSIZE_CSEC) from
SYS.V_$SYSMETRIC)
--查看数据库的总性能
select *
from sys.v_$sysmetric_history
where metric_name = 'Database CPU Time Ratio'
order by 1
--获得数据库整体性能效率的最大、最小和平均值
select CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
'SQL Service Response Time (secs)'
WHEN 'Response Time Per Txn' then
'Response Time Per Txn (secs)'
ELSE
METRIC_NAME
END METRIC_NAME,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
ROUND((MINVAL / 100), 2)
WHEN 'Response Time Per Txn' then
ROUND((MINVAL / 100), 2)
ELSE
MINVAL
END MININUM,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
ROUND((MAXVAL / 100), 2)
WHEN 'Response Time Per Txn' then
ROUND((MAXVAL / 100), 2)
ELSE
MAXVAL
END MAXIMUM,
CASE METRIC_NAME
WHEN 'SQL Service Response Time' then
ROUND((AVERAGE / 100), 2)
WHEN 'Response Time Per Txn' then
ROUND((AVERAGE / 100), 2)
ELSE
AVERAGE
END AVERAGE
from SYS.V_$SYSMETRIC_SUMMARY
where METRIC_NAME in
('CPU Usage Per Sec', 'CPU Usage Per Txn', 'Database CPU Time Ratio',
'Database Wait Time Ratio', 'Executions Per Sec',
'Executions Per Txn', 'Response Time Per Txn',
'SQL Service Response Time', 'User Transaction Per Sec')
ORDER BY 1
--查看究竟是什么类型的用户活动影响数据库的响应速度,找到相应的主要花费时间处理的部分
select case db_stat_name
when 'parse time elapsed' then
'soft parse time'
else
db_stat_name
end db_stat_name,
case db_stat_name
when 'sql execute elapsed time' then
time_secs - plsql_time
when 'parse time elapsed' then
time_secs - hard_parse_time
else
time_secs
end time_secs,
case db_stat_name
when 'sql execute elapsed time' then
round(100 * (time_secs - plsql_time) / db_time, 2)
when 'parse time elapsed' then
round(100 * (time_secs - hard_parse_time) / db_time, 2)
else
round(100 * time_secs / db_time, 2)
end pct_time
from (select stat_name db_stat_name, round((value / 1000000), 3) time_secs
from sys.v_$sys_time_model
where stat_name not in ('DB time', 'background elapsed time',
'background cpu time', 'DB CPU')),
(select round((value / 1000000), 3) db_time
from sys.v_$sys_time_model
where stat_name = 'DB time'),
(select round((value / 1000000), 3) plsql_time
from sys.v_$sys_time_model
where stat_name = 'PL/SQL execution elapsed time'),
(select round((value / 1000000), 3) hard_parse_time
from sys.v_$sys_time_model
where stat_name = 'hard parse elapsed time')
order by 2 desc
--等待时间中的等待事件,等待的文件,等待的对象
select sql_id,
event as "等待事件",
time_waited,
owner,
object_name as "等待的对象",
current_file# as "等待的文件",
current_block#
from sys.v_$active_session_history a, sys.dba_objects b
where a.current_obj# = b.object_id
and time_waited <> 0
--前5位用户I/O等待最高的SQL语句
select *
from (select sql_text, sql_id, elapsed_time, cpu_time, user_io_wait_time
from sys.v_$sqlarea
order by 5 desc)
where rownum < 6
--查看等待事件来找出等待和瓶颈,找出大部分的整体等待时间
select WAIT_CLASS,
TOTAL_WAITS,
round(100 * (TOTAL_WAITS / SUM_WAITS), 2) PCT_WAITS,
ROUND((TIME_WAITED / 100), 2) TIME_WAITED_SECS,
round(100 * (TIME_WAITED / SUM_TIME), 2) PCT_TIME
from (select WAIT_CLASS, TOTAL_WAITS, TIME_WAITED
from V$SYSTEM_WAIT_CLASS
where WAIT_CLASS != 'Idle'),
(select sum(TOTAL_WAITS) SUM_WAITS, sum(TIME_WAITED) SUM_TIME
from V$SYSTEM_WAIT_CLASS
where WAIT_CLASS != 'Idle')
order by 5 desc
--最新的一个小时等待类型
select a.sid,
b.username,
a.wait_class,
a.total_waits,
round((a.time_waited / 100), 2) time_waited_secs
from sys.v_$session_wait_class a, sys.v_$session b
where b.sid = a.sid
and b.username is not null
and a.wait_class != 'Idle'
order by 5 desc
--找出耗费资源比较多的SQL语句
SELECT first_load_time,
SQL_TEXT,
buffer_gets,
executions,
buffer_gets/executions AVG
FROM v$sqlarea
WHERE executions>0
AND buffer_gets > 100000
ORDER BY 5
--找出需要大量缓冲读取(逻辑读)操作的查询
select *
from (select sql_text,
buffer_gets,
dense_rank() over(order by buffer_gets desc) buffer_gets_rank,optimizer_cost
from v$sql)
where buffer_gets_rank <= 10
--V$SQL是内存共享SQL区域中已经解析的SQL语句。
--列出使用频率最高的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
--消耗磁盘读取最多的sql
select disk_reads, sql_text
from (select sql_text,
disk_reads,
dense_rank() over(order by disk_reads desc) disk_reads_rank
from v$sql)
where disk_reads_rank <= 5
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/bluestream/archive/2008/09/28/2990631.aspx
发表评论
-
【转】JDBC使用TNS连接多节点Oracle
2015-04-28 09:06 535原创作品,允许转载 ... -
[转]讲解oracle自定义聚合函数
2013-10-10 14:58 1076应用场景: 权限管理:同一功能对同一用户有多个不同 ... -
<a href="http://www.baidu.com">test
2012-09-25 10:07 0asda -
[转]oracle分区表总结
2011-08-09 10:17 777在ORACLE里如果遇到特别大的表,可以使用分区的表来改变 ... -
[转]Oracle中日期时间的操作比较和加减-入门基础
2011-04-13 14:23 982Oracle关于时间/日期的操 ... -
Oracle行转列, 列以字符串的形式进行拼接
2011-02-09 15:17 1553Oracle10g提供了个新函数wmsys.wm_concat ... -
SQL中escape的主要用途
2011-01-28 11:40 1649SQL中escape的主要用途 1.使用 ESCAP ... -
[转]oracle10G的闪回数据库及删除表
2011-01-12 17:22 1228最近终于体会了一下oracle10G的闪回数据库,这个功能 ... -
[转]ORACLE函数大全
2010-06-11 20:52 701文章分类:数据库 SQL 中的单记录函数1.ASC ... -
oracle 日期函数
2010-03-29 09:35 873trunc(sysdate,'Q') --本季度第一天 tru ... -
Oracle10G可以采用下面的方法
2010-02-25 14:31 775Oracle10G可以采用下面的方法<!--<br ... -
oracle学习笔记【转】
2010-02-07 11:53 8341、set linesize 100; 设置长度 ... -
Oracle Database 10g 中的正规表达式特性是一个用于处理文本数据的强大工具
2009-11-20 14:31 908Oracle Database 10g 的一个新特性大大提高了 ... -
10g透明网关访问sqlserver
2009-10-22 14:03 98810g透明网关访问sqlserver 老话题了。 最近一个项目 ... -
ORACLE 备份与恢复EXP/IMP 命令参数
2009-08-20 16:53 1688EXP/IMP 命令参数 一、EXP: ... -
ORACLE中的正则表达式
2009-08-18 12:57 1170ORACLE终于在10G中提供了对正则表达式的支持,以前那些需 ... -
Oracle关于用户和表空间的一些操作
2009-07-08 10:54 1127SYS用户在CMD下以DBA身份 ...
相关推荐
深入分析Oracle数据库的响应时间 Oracle数据库作为关系型数据库的领头羊,具有独特的技术优势,在响应时间的分析和优化方面具有重要的意义。本文从数据库系统级和SQL语句级两个方面进行了深入的分析,旨在帮助...
对于Oracle数据库无响应故障的处理,首先需要准确判断故障的具体表现形式和影响范围,然后结合故障现象进行深入分析,找出可能导致故障的根本原因。针对不同的故障原因,采取相应的措施进行修复。例如,如果是由于...
### Oracle数据库服务器IO高的分析方案 #### 前言 在日常运维中,经常会遇到Oracle数据库服务器出现IO过高的情况,这种情况可能导致业务系统的响应速度变慢,甚至影响正常服务的提供。本文旨在深入探讨Oracle...
**Oracle数据库无响应故障**,指的是数据库实例无法响应客户端发起的请求,客户端提交SQL后长时间等待数据库实例返回结果,甚至无法建立连接。此类故障的现象主要包括: 1. **Oracle进程等待资源或事件**:此类现象...
### Oracle数据库慢分析 #### 概述 在Oracle数据库管理与优化过程中,遇到性能瓶颈时,最常见的一种问题就是数据库响应变慢。这种现象通常被称为“慢数据库”问题。为了有效地解决这类问题,Oracle提供了详细的...
IO 响应时间是衡量 Oracle 数据库服务器性能的重要指标。一般来说,如果单个 IO 的响应时间在 20 毫秒以内,是可以接受的,较好的性能应该在 10 个毫秒以下,越低越好。超过 20 毫秒的单个 IO 响应时间,则可认为...
Oracle数据库作为一款高性能的大型关系数据库管理系统,广泛应用于各行业的关键业务中。随着业务规模的扩大和数据量的增长,数据库运维和故障应急处理变得尤为重要。本文档即为Oracle数据库的日常运维及应急故障处理...
《Oracle数据库性能优化实践指南》是一本专注于Oracle数据库性能调优的专业书籍,旨在帮助读者深入理解和掌握如何在实际环境中提升Oracle数据库的运行效率。Oracle数据库是全球广泛使用的大型企业级数据库管理系统,...
通常,这样的脚本会包含初始化参数、响应文件、安装包路径等信息,以控制Oracle数据库的全自动安装流程。 自动安装Oracle数据库的步骤通常包括以下部分: 1. **环境准备**:确保系统满足Oracle的硬件和软件要求,...
Oracle数据库提供了丰富的监控工具和性能指标,如AWR(Automatic Workload Repository)、ASH(Active Session History)等,用于分析数据库的工作负载、会话活动、资源消耗情况,帮助DBA定位性能瓶颈,优化数据库...
本文将深入探讨Oracle数据库调优配置中的两种常见方案,旨在帮助数据库管理员(DBA)提升系统的响应速度和资源利用率。 #### 方案一:参数调整与优化 在Oracle数据库中,合理设置初始化参数是提高系统性能的基础。...
在IT行业的数据库管理领域,Oracle数据库因其强大的功能和广泛的适用性而备受青睐。然而,随着数据量的激增和业务复杂度的提升,如何优化Oracle数据库的性能成为了IT专业人士关注的焦点。本文将深入探讨“用智能优化...
总的来说,Oracle数据库跟踪工具SQLTracker是DBA和开发人员的强大助手,通过其丰富的功能和直观的界面,能够有效地诊断和优化Oracle数据库的性能,提高应用程序的响应速度,同时减少维护成本。对于任何使用Oracle...
《LIB图书管理系统:Java与Oracle数据库的协同应用》 在信息技术日益发达的今天,图书管理系统的建设已经成为图书馆信息化建设的重要组成部分。"LIB图书管理系统"就是这样一款利用Java编程语言与Oracle数据库相结合...
- **响应时间**:监控数据库响应用户请求的速度。 - **Redo日志空间延迟**:如果写入Redo日志速度慢,可能会影响性能。 - **锁资源**:识别和解决锁争用问题,避免阻塞其他会话。 - **回滚段等待**:高比例的...
### Oracle数据库备份与恢复 #### 一、Oracle数据库概述 Oracle数据库是一款由甲骨文公司开发的关系型数据库管理系统,以其卓越的性能、可扩展性和安全性在全球范围内被广泛应用。Oracle数据库的特点包括: - **...
5. 数据报表:通过JSP页面实现对Oracle数据库中数据的复杂查询和分析,生成报表。 通过学习《jsp+oracle数据库开发与实例》及其配套资源,开发者可以提升在Web应用开发中的数据库操作能力,了解如何在JSP中有效地...
标题“Java用JDBC实现对Oracle数据库操作”主要涉及Java编程语言如何利用Java Database Connectivity (JDBC) API来与Oracle数据库进行交互。JDBC是Java中用于与各种数据库通信的标准接口,而Oracle数据库是一个广泛...
### Oracle数据库核心知识点详解 #### Oracle数据库概述 Oracle数据库是由美国甲骨文公司(Oracle Corporation)研发的一款基于SQL(Structured Query Language)的关系型数据库管理系统。它以其强大的数据处理...