statspack 是一个很重要的工具, 这是我们重点要知道的在这章

每天一上班就要看一下 alert log 文件, 可以通过/ORA找, 这是vi的知识,所有的ORACLE错误都是以ORA开头的

日志文件有的时候需要将里边内容拷贝走,清空。 cat /dev/null > alert_pitts.log (直接删除也可以, 删除后oracle会自动产生)

每天确认 Alert log file 是很重要的. 确认的内容:

1. 带 ORA 开头的错误的内容

2. 那些可以影响到 database structure and parameters and statements的操作, 例如 create database, startup, shutdown, archivelog and recover 等

3. instance start 时那些不是默认的参数是否正确

4. alertlog file 位置在 parameter BACKGROUND_DUMP_DEST

在alertlog file 中重点要看的以下几方面信息:

检查点如果想在alert log 里体现, LOG_CHECKPOINTS_TO_ALERT 这个参数设置 true.

alertlog file 是和数据库相关的

trace file : 是和进程相关的.

background process trace file 一般是提交给ORACLE support的部门,一般人员包括DBA看不懂

这些 file 里包含了 background process 的一些问题体现, 另外这些file里并没有包含调优的信息.

These files are created by the background processes.

这个文件比较重要, 可以是 session 级别, 也可以是 instance 级别.

v$session 这个视图可以看到多少个用户连接上来.

user trace 的文件名格式为 sid_ora_pid.trc

这个文件包含了 SQL statements 的一些统计信息.

EXECUTE dbms_system.set_sql_trace_in_session(参数) 设置某个session是否需要产生trace file

show parameter sql_trace 这是控制全局的,所有的session会产生sql trace, 一般避免这么做,这样文件太大

Instance 级别: 设置参数 SQL_TRACE , 默认是 false, 可以看出, 对所有 session 的确认 trace file.

session 级别: 对特殊的 session 来进行 trace file 确认.

execute dbms_system.set_sql_trace_in_session(8, 12, true);

where 8 and 12 are the system identifier and serial numbers of the connected user.  这两个数, 可以通过v$session 这个视图中看到.

The following statement enables the writing to a trace file for the session of the connected user:

ALTER SESSION SET sql_trace=TRUE;   -- 这个也是只针对当前 session.

statspack 非常重要(utlbstat.sql , utlestat.sql 已经被 statspack 取代了)

Dictionary and Dynamic Views

Oracle server displays all system statistics in the V$SYSSTAT view, and use many other views for performance and troubleshooting information.

The UTLBSTAT and UTLESTAT Utilities

STATSPACK 也能实现 UTLBSTAT 与 TULESTAT 的功能.

packs 包,在官方文档里详细列出了很多包

statspack 很重要

Oracle Wait Events

oracle 等待请求资源的情况, 可以从一些数据字典中获得.

起始快照, 终止快照 的对比会产生一个报告, 报告快照之间的数据库运行情况.

statspack 必看文档  rdbms/admin/spdoc.txt

statspack 是个用户, snapshop存储在表里, 因为statspack在执行快照时保存的数据大,所以

最好要创建表空间为statspack, 然后将statspack里的所有的表都放在这个表空间里

实际上是创建了一个用户, 这个用户下边有很多表.

安装与使用 statspack:

1. 首先为 statspack 创建一个表空间:

create tablespace perfstat datafile '/u01/oradata/pitts/perfstat_01.dbf' size 512m;

2. 运行安装脚本:

@?/rdbms/admin/spcreate.sql  -- 执行命令后, 会提示你输入口令, 因为自动创建了一个用户叫perfstat, 口令比如也输入 perfstat, 然后又会提示你使用哪个表空间, 就输入刚刚我们为这个用户创建的表空间 PERFSTAT, 这时候又提示你需要指定临时表空间, 可以选择目前系统默认的表空间, 比如TEMP, 然后就开始创建, 创建以后, 你可以检查当前目录下的 spcpkg.lis 这个日志文件查看创建的过程有没有问题. 一般是不会有错误的.

3. 使用 statspack:

execute statspack.snap;   -- 这样就做了一个快照, 手动执行(也有自动采集, 比如Linux提供的间隔工作, 或者 oracle 提供的)

execute statspack.snap;   -- 这样就做了一个快照, 手动执行, 又执行了一次快照

时间间隔取决于你的需求, 一般大概15分钟左右, 尤其是这期间不能有数据库关闭的情况.

产生报告: @?/rdbms/admin/spreport, 这时列出了很多snap快照, 你可以选择begin的一个比如1, end的一个比如3, 然后输入汇报的名字, 也可以使用默认的, 这个报告在当前目录下会产生.

statspack 专题讲座

statspack 的报告非常复杂.

可以看出 statspack 给出了很全的信息

分析 statspack 是比较犯难的问题. 下面的书是来看分析statspack.

推荐

Tom大师的 高效设计( 我有但不清晰 )

上面数据字典的内容是静态的, 只有你运行 dbms_stats 这个包以后, 这些静态的数据字典才会更新.

等待资源是 wait events

Example:

select username, name, value

from v$statname n, v$session s, v$sesstat t

where s.sid = t.sid

and n.statistic #= t.statistic#

and s.type = ‘USER’

and s.username is not null

and n.name = ‘session pga memory’

and t.value > 30000;

下面要开发自己的脚本.

statistics_level : all, typical basic. 搜集信息的总开关. 默认是 typical. all 就是会搜集很多很多的指标, basic 就搜集很少很少, 所以通常 typical 就够了.

timed_statistics: 搜集指标和时间相关, 很多情况我们需要将这个参数设置为 true.

timed_os_statistics: 搜集的单位是秒, 要搜集操作系统的指标

DB_CACHE_ADVICE: 和 cache 大小相关, off, ready, on 这三个值.

以上参数可以读联机文档.

tuning 02 Diagnostic and Tuning Tools的更多相关文章

  1. Performance Tuning guide 翻译 || Performance Tuning Guide 11G中新增特性

    CSDN 对格式支持比較弱.能够到http://user.qzone.qq.com/88285879/blog/1399382878 看一致的内容. Performance Tuning Guide  ...

  2. Inside TSQL Querying - Chapter 3. Query Tuning

    Tuning Methodology When dealing with performance problems, database professionals tend to focus on t ...

  3. 老李分享: Oracle Performance Tuning Overview 翻译

    老李分享: Oracle Performance Tuning Overview 翻译   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工 ...

  4. Performance Tuning Guidelines for Windows Server 2012

    http://msdn.microsoft.com/en-us/library/windows/hardware/jj248719.aspx This guide describes importan ...

  5. 初次使用SQL调优建议工具--SQL Tuning Advisor

    在10g中,Oracle推出了自己的SQL优化辅助工具: SQL优化器(SQL Tuning Advisor :STA),它是新的DBMS_SQLTUNE包. 使用STA一定要保证优化器是CBO模式下 ...

  6. How to Evaluate Machine Learning Models, Part 4: Hyperparameter Tuning

    How to Evaluate Machine Learning Models, Part 4: Hyperparameter Tuning In the realm of machine learn ...

  7. 深入了解SQL Tuning Advisor(转载)

    1.前言:一直以来SQL调优都是DBA比较费力的技术活,而且很多DBA如果没有从事过开发的工作,那么调优更是一项头疼的工作,即使是SQL调优很厉害的高手,在SQL调优的过程中也要不停的分析执行计划.加 ...

  8. Oracle SQL Tuning Advisor 测试

    如果面对一个需要优化的SQL语句,没有很好的想法,可以先试试Oracle的SQL Tuning Advisor. SQL> select * from v$version; BANNER --- ...

  9. 怎样使用oracle 的DBMS_SQLTUNE package 来执行 Sql Tuning Advisor 进行sql 自己主动调优

     怎样使用oracle 的DBMS_SQLTUNE package 来执行 Sql Tuning Advisor 进行sql 自己主动调优 1>.这里简单举个样例来说明DBMS_SQLTUN ...

随机推荐

  1. map线程

    来看看map线程到底是如何运行的 很早就知道一个map是一个线程,以后有可能改成一个map一个进程,那就先来看看一个map一个线程是如何运作的 其实刚开始整个服务器就是两个线程,但发现这样服务器支持的 ...

  2. jetty启动报错Unsupported major.minor version 51.0

    主要是JDK版本的问题,需要将Eclipse的Jdk版本设置为1.7的才可以,编译级别也设置为1.7,然后删除maven项目路径,D:\WORK\workspace\xxx\target下的所有文件, ...

  3. 数位DP之小小结

    资料链接:http://wenku.baidu.com/view/9de41d51168884868662d623.html http://wenku.baidu.com/view/d2414ffe0 ...

  4. Linux关于watch的用法

    Linux关于watch的用法 2011-07-20      0个评论       收藏    我要投稿 watch 是一个非常实用的命令,基本所有的 Linux 发行版都带有这个小工具,如同名字一 ...

  5. HDU5052 Yaoge’s maximum profit(LCT)

    典型的LCT操作,但是维护的是一个序列最左边减最右边的最小值,所以要维护左边减右边的最小值del[0]和一个右边减左边的最小值del[1](因为rev标记swap的时候对应的值也要交换).维护的时候d ...

  6. HDU 4597 Play Game(记忆化搜索,深搜)

    题目 //传说中的记忆化搜索,好吧,就是用深搜//多做题吧,,这个解法是搜来的,蛮好理解的 //题目大意:给出两堆牌,只能从最上和最下取,然后两个人轮流取,都按照自己最优的策略,//问说第一个人对多的 ...

  7. Android ListVIew 详解(一)

    在android开发中ListView是比较常用的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示.抽空把对ListView的使用做了整理,并写了个小例子,如下图. 列表的显示需要三 ...

  8. strrchr函数

    C语言函数 函数简介 函数名称: strrchr 函数原型:char *strrchr(char *str, char c); 所属库: string.h 函数功能:查找一个字符c在另一个字符串str ...

  9. QTP10.0安装说明

    QTP10.0 安装手册 注:安装之前检查清理相关注册表:运行->regdit-HKEY_LOCAL_MACHINE->HKEY_LOCAL_MACHINE\SOFTWARE->HK ...

  10. 【poj2478-Farey Sequence】递推求欧拉函数-欧拉函数的几个性质和推论

    http://poj.org/problem?id=2478 题意:给定一个数x,求<=x的数的欧拉函数值的和.(x<=10^6) 题解:数据范围比较大,像poj1248一样的做法是不可行 ...