169it科技资讯


当前位置:  数据库>其它
本页文章导读:
    ▪Oracle 11g AWR 系列七:Active Session History (ASH) 报告      生成 Active Session History (ASH) 报告 ASH 报告的作用: 利用 ASH 报告可以分析持续时间通常只有几分钟的瞬间性能问题 根据各种维度(如 time、session、module、action 或 sql_id )或这些维度的组合进行.........
    ▪Oracle 11G新特性(共36个)            Oracle 11G新特性(共36个) 一、数据库管理部分  ·      1、 数据库重演(Database Replay)         这一特性可以捕捉整.........
    ▪父子节点问题      --查询指定节点下的所有子节点: --SQL Server2005以上版本 -->>TravyLee生成测试数据: if OBJECT_ID('tempdb..#tb') is not null drop table #tb go create table #tb ( id int, fid int ) go insert #tb select 1,0 union all  sele.........

[1]Oracle 11g AWR 系列七:Active Session History (ASH) 报告
    来源: 互联网  发布时间: 2013-11-07
生成 Active Session History (ASH) 报告


ASH 报告的作用:
利用 ASH 报告可以分析持续时间通常只有几分钟的瞬间性能问题
根据各种维度(如 time、session、module、action 或 sql_id )或这些维度的组合进行确定范围或目标的性能分析


瞬间性能问题持续的时间非常短,不会出现在Automatic Database Diagnostics Monitor (ADDM) 分析中。ADDM 尝
试在分析期间根据问题读 DB time 的影响报告重大的性能问题。如果某个特定的问题持续的时间非常短暂,则该问题
的严重性可能就被均匀化,或因分析期间产生的其他性能问题而减小。因此,在 ADDM 中可能找不到该问题的记录。
ADDM 是否捕获某个性能问题,取决于该问题的持续时间与 AWR 快照之间的间隔的时间比。


如果性能问题持续的时间与快照间隔比非常大,则 ADDM 将捕获该问题。例如,如果快照间隔设为 1 小时,而性能问
题持续了 30 分钟,则该问题就不会被视为瞬间性能问题,因为其持续时间与快照间隔比较大,很可能被 ADDM 捕获
到。


如果某个性能问题只持续 2 分钟,该问题可能就是一个短暂的性能问题,因为其持续时间与快照间隔的比例非常小,
不会出现在 ADDM 发现的问题当中。比如,如果用户通知您系统在晚上 10 点到 10 点过 10 分之间非常慢,而 ADDM 分析
的时段在晚上 10 点到 11 点之间,并且未显示任何性能问题,则可能发生了短暂的性能问题,在用户所报告的10分钟
时段内只持续了数分钟。




下面将介绍如何生成 ASH 报告:


1.生成单实例 ASH 报告


@$ORACLE_HOME/rdbms/admin/ashrpt.sql


2.生成 Oracle RAC 环境下特定数据库实例的 ASH 报告


@$ORACLE_HOME/rdbms/admin/ashrpti.sql


3.生成 Oracle RAC ASH 报告


@$ORACLE_HOME/rdbms/admin/ashrpti.sql


转载请注明作者出处及原文链接:


http://blog.csdn.net/xiangsir/article/details/8666171


作者:xiangsir 发表于2013-3-12 23:45:55 原文链接
阅读:64 评论:0 查看评论

    
[2]Oracle 11G新特性(共36个)
    来源: 互联网  发布时间: 2013-11-07
      Oracle 11G新特性(共36个)

一、数据库管理部分

 ·      1、 数据库重演(Database Replay)

        这一特性可以捕捉整个数据的负载,并且传递到一个从备份或者standby数据库中创建的测试数据库上,然后重演负载以测试系统调优后的效果。

 ·      2、 SQL重演(SQLReplay)

        和前一特性类似。但是只是捕捉SQL负载部分,而不是全部负载。

 ·      3、计划管理(Plan Management) 

        这一特性允许你将某一特定语句的查询计划固定下来,无论统计数据变化还是数据库版本变化都不会改变它的查询计划。

        4、自动诊断知识库(Automatic Diagnostic RepositoryADR)

        当Oracle探测到重要错误时,会自动创建一个事件(incident),并且捕捉到和这一事件相关的信息,同时自动进行数据库健康检查并通知DBA。此外,这些信息还可以打包发送给Oracle支持团队。

 ·      5、事件打包服务(Incident Packaging Service)

        如果你需要进一步测试或者保留相关信息,这一特性可以将与某一事件相关的信息打包。并且你还可以将打包信息发给oracle支持团队。

 ·      6、基于特性打补丁(Feature Based Patching) 

       在打补丁包时,这一特性可以使你很容易区分出补丁包中的那些特性是你正在使用而必须打的。企业管理器(EM)使你能订阅一个基于特性的补丁服务,因此企业管理器可以自动扫描那些你正在使用的特性有补丁可以打。

        7、自动SQL优化(Auto SQLTuning)

       10g的自动优化建议器可以将优化建议写在SQL profile中。而在11g中,你可以让oracle自动将能3倍于原有性能的profile应用到SQL语句上。性能比较由维护窗口中一个新管理任务来完成。

 ·      8、 访问建议器(Access Advisor)

        11g的访问建议器可以给出分区建议,包括对新的间隔分区(interval partitioning)的建议。间隔分区相当于范围分区(rangepartitioning)的自动化版本,她可以在必要时自动创建一个相同大小的分区。范围分区和间隔分区可以同时存在于一张表中,并且范围分区可以转换为间隔分区。

 ·      9、 自动内存优化(Auto Memory Tuning)

        在9i中,引入了自动PGA优化;10g中,又引入了自动SGA优化。到了11g,所有内存可以通过只设定一个参数来实现全表自动优化。你只要告诉oracle有多少内存可用,她就可以自动指定多少内存分配给PGA、多少内存分配给SGA和多少内存分配给操作系统进程。当然也可以设定最大、最小阈值。

        10、资源管理器(Resource Manager)

        11g的资源管理器不仅可以管理CPU,还可以管理IO。你可以设置特定文件的优先级、文件类型和ASM磁盘组。

        11、ADDM

        ADDM在10g被引入。11g中,ADDM不仅可以给单个实例建议,还可以对整个RAC(即数据库级别)给出建议。另外,还可以将一些指示(directive)加入ADDM,使之忽略一些你不关心的信息。

 ·      12、AWR 基线(AWRBaselines) 

AWR基线得到了扩展。可以为一些其他使用到的特性自动创建基线。默认会创建周基线。

 二、 PLSQL部分

 ·       1、结果集缓存(Result Set Caching) 

        这一特性能大大提高很多程序的性能。在一些MIS系统或者OLAP系统中,需要使用到很多"select count(*)"这样的查询。在之前,我们如果要提高这样的查询的性能,可能需要使用物化视图或者查询重写的技术。在11g,我们就只需要加一个/*+result_cache*/的提示就可以将结果集缓存住,这样就能大大提高查询性能。当然,在这种情况下,我们可能还要关心另外一个问题:完整性。因为在oracle中是通过一致性读来保证数据的完整性的。而显然,在这种新特性下,为提高性能,是从缓存中的结果集中读取数据,而不会从回滚段中读取数据的。关于这个问题,答案是完全能保证完整性。因为结果集是被独立缓存的,在查询期间,任何其他DML语句都不会影响结果集中的内容,因而可以保证数据的完整性。 

·        2、对象依赖性改进

       在11g之前,如果有函数或者视图依赖于某张表,一旦这张表发生结构变化,无论是否涉及到函数或视图所依赖的属性,都会使函数或视图变为invalid。在11g中,对这种情况进行了调整:如果表改变的属性与相关的函数或视图无关,则相关对象状态不会发生变化。

 ·       3、正则表达式的改进 

       在10g中,引入了正则表达式。这一特性大大方便了开发人员。11g,oracle再次对这一特性进行了改进。其中,增加了一个名为regexp_count的函数。另外,其他的正则表达式函数也得到了改进。 

·        4、新SQL语法 =>

        我们在调用某一函数时,可以通过=>来为特定的函数参数指定数据。而在11g中,这一语法也同样可以出现在sql语句中了。例如,你可以写这样的语句:

select f(x=>6)from dual; 

·        5、对TCP包(utl_tcp、utl_smtp…)支持FGAC(Fine Grained AccessControl)安全控制 

·        6、增加了只读表(read-only table) 

         在以前,我们是通过触发器或者约束来实现对表的只读控制。11g中不需要这么麻烦了,可以直接指定表为只读表。

         7、内部单元内联(Intra-Unitinlining) 

        在C语言中,你可以通过内联函数(inline)或者宏实现使某些小的、被频繁调用的函数内联,编译后,调用内联函数的部分会编译成内联函数的函数体,因而提高函数效率。在11g的plsql中,也同样可以实现这样的内联函数了。

 ·       8、设置触发器顺序 

        可能

    
[3]父子节点问题
    来源: 互联网  发布时间: 2013-11-07
--查询指定节点下的所有子节点:
--SQL Server2005以上版本
-->>TravyLee生成测试数据:


if OBJECT_ID('tempdb..#tb') is not null
drop table #tb
go
create table #tb
(
id int,
fid int
)
go
insert #tb
select 1,0 union all 
select 2,1 union all 
select 3,1 union all 
select 4,2 union all 
select 5,3 union all 
select 6,5 union all 
select 7,6 union all
select 8,4 union all
select 9,6
go
declare @id int
set @id=2
;with t
as
(
select * from #tb where id=@id
union all
select a.* from #tb a inner join t b
on a.fid=b.id
)
select * from t
/*
id fid
-------------
2 1
4 2
8 4
*/


--查询指定字节点下的所有父节点:


declare @fid int
set @fid=4
;with t
as(
select * from #tb where fid=@fid
union all
select a.* from #tb a inner join t b
on a.id=b.fid
)
select * from t order by id


/*
id fid
----------------
1 0
2 1
4 2
8 4
*/




--SQL Server 2000


-->Title:Generating test data
-->Author:wufeng4552
-->Date :2009-09-30 08:52:38
set nocount on
if object_id('tb','U')is not null drop table tb
go
create table tb(ID int, ParentID int)
insert into tb select 1,0  
insert into tb select 2,1  
insert into tb select 3,1  
insert into tb select 4,2  
insert into tb select 5,3  
insert into tb select 6,5  
insert into tb select 7,6
-->Title:查找指定節點下的子結點
if object_id('Uf_GetChildID')is not null drop function Uf_GetChildID
go
create function Uf_GetChildID(@ParentID int)
returns @t table(ID int)
as
begin
   insert @t select ID from tb where ParentID=@ParentID
   while @@rowcount<>0
   begin
      insert @t select a.ID from tb a inner join @t b
      on a.ParentID=b.id and 
      not exists(select 1 from @t where id=a.id)
   end 
return
end
go
select * from dbo.Uf_GetChildID(5)
/*
ID
-----------
6
7
*/
-->Title:查找指定節點的所有父結點
if object_id('Uf_GetParentID')is not null drop function Uf_GetParentID
go
create function Uf_GetParentID(@ID int)
returns @t table(ParentID int)
as
begin
   insert @t select ParentID from tb where ID=@ID
   while @@rowcount!=0
   begin
     insert @t select a.ParentID from tb a inner join @t b
       on a.id=b.ParentID and 
       not exists(select 1 from @t where ParentID=a.ParentID)
   end
  return
end
go
select * from dbo.Uf_GetParentID(2)
/*
ParentID
-----------
1
0
*/






作者:TravyLee 发表于2013-3-13 10:46:16 原文链接
阅读:0 评论:0 查看评论

    
最新技术文章:
▪gc buffer busy/gcs log flush sync与log file sync    ▪让你的PL/SQL更好用    ▪ADO.NET中的非脱机数据库查询
▪参数job_queue_processes与Oracle jobs    ▪11gR2游标共享新特性带来的一些问题以及_cursor...    ▪_library_cache_advice和latch:shared pool、latch:shared poo...
▪SQL: Date Utility    ▪DB2 分区表增加分区    ▪DB2第一步 — 创建表
▪oracle 数据库    ▪插入10万条记录测试    ▪rebuild index VS. rebuild index online
▪如何处理undo tablespace 表空间太大的问题    ▪ado执行存储过程中包含结果集获取输出参数为...    ▪oracle函数的demo
▪Entity Framework 学习建议及自学资源    ▪存储过程的编写    ▪Linux/Unix shell 自动发送AWR report(二)
▪第二章 Oracle恢复内部原理(基础数据结构)    ▪Redis源码学习之【Tcp Socket封装】    ▪Java Jdbc减少与Oracle之间交互提升批量处理性能...
▪南大通用GBase8a Vs Oracle11g 单机测试亲测    ▪oracle 中行列转换    ▪rhel下安装oracle10g+asm---测试环境搭建
▪Redis系列-主从复制配置    ▪MySQL索引与查询优化    ▪INDEX受到NULL值的影响
▪测试人员的SQL语言 系列    ▪SQL数据库基本语句    ▪MySQL Replication常见错误整理[持续更新...]
▪eclipse下建立esper的demo    ▪把oracle rac 转化为单机数据库    ▪Redis系列-存储篇sorted set主要操作函数小结
▪基本的SQL*Plus报表和命令    ▪druid简单教程    ▪11g调度--scheduler使用
▪EF基础一    ▪db2存储过程中循环语句while do的continue有没有...    ▪oracle 创建DBLINK
▪DB2数据库备份还原    ▪Warning: prerequisite DBD::mysql 1 not found错误解决方...    ▪innotop性能监视mysql,innodb工具
▪数据迁移:DataGuard配置    ▪QX项目实战-19.跨库数据同步    ▪Mysql EXPLAIN
▪Oracle 11g AWR 系列七:Active Session History (ASH) 报...    ▪Oracle 11G新特性(共36个)    ▪父子节点问题
▪OEM简介及按钮乱码问题    ▪NoSql之MongoDB的常用类管理    ▪ORA-39700: database must be opened with UPGRADE option
▪node.js 访问redis数据库,pub/sub    ▪使用DBMS_REDEFINITION在线重定义分区表    ▪SQL Developer 使用问题与解决方法汇总
▪oralce 11g dataguard 概念    ▪ORA-30004 错误处理    ▪oracle分组函数rollup,cube
▪Sql Developer 使用问题与解决方法汇总    ▪Configure Oracle Dataguard Primary-ASM to Physical-ASM    ▪Oracle Data Guard 理论知识
▪Control File 恢复    ▪Oracle数据文件收缩    ▪Oracle 11g AWR 系列五:如何生成 AWR 报告?
▪Wireshark数据包分析实战(第2版)    ▪MySql用户权限控制    ▪db2和oracle查询序列区别
▪更新blob字段的存储过程    ▪MySQLReport分析报告三    ▪DB2中的序列
▪Oracle中DBMS_RANDOM.STRING 的用法    ▪SQL SERVER无法安装成功,sqlstp.log文件提示[未发...    ▪Data Guard 部署物理备库的 10 大注意事项
▪万能数据库查询分析器使用技巧之(九)    ▪SQL 自定义Split函数    ▪视图 v$sql,v$sqlarea,$sqltext,v$sqltext_with_newlines 的...
▪Data Guard Standby_archive_dest 和 Log_archive_dest_n 的...    ▪机房收费系统数据库设计(一)    ▪利用putty的SSH tunnel连接Oracle
▪DBCA建库偶遇ORA-27125    ▪使用PowerPivot建立简单的分析模型    ▪Linux/Unix shell 自动发送AWR report
▪写入到blob字段的存储过程    ▪关于JDBC中ResultSet接口的一点细节探究    ▪Data Guard 配置 Standby Redo Log
▪linux下redis的安装    ▪windows下redis的安装    ▪手动创建数据库步骤(简单翻译官方文档)
▪Ubuntu安装Mongodb    ▪SQL CLR应用    ▪redis的配置文件参数--详细说明
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2017,169IT.COM,E-mail:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号