工欲善其事, 必先利其器.

oracle 调优方面有很多工具, 目前 UI 个人只打算使用 Toad.

重要文件

一. alert log file. (位置 parameter BACKGROUND_DUMP_DEST)

这个文件中有很多重要的内容, 可以通过调整 LOG_CHECKPOINTS_TO_ALERT 这个参数, 将 checkpoint 内容写到这个文件中.

使用方法 :

1. 可以搜索带 ORA 开头的内容, 例如使用 vi 工具的 /ORA, 这样可以快速定位错误的内容加以判断.

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

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

二. User Trace file

这个文件包含了 sql statement 执行的一些统计信息, 可以是 session 级别的, 也可以是instance 级别的(全部session都包括), 一般我们使用 session 级别的.

instance 级别, 设置方法是将 sql_trace 这个参数设置为 true. 注意: 这样会造成 user trace file 这个文件很大.

session 级别, 即只针对某些特殊的 session 来进行 trace file 确认. 设置方法: execute dbms_system.set_sql_trace_in_session(8, 12, true);

以上设置的参数分别的, 8 是 system identifier , 12 是 serial number, true 表示接下来的 sql statement 可以写到 trace file.

也可以使用 alter session set sql_trace= true  -- 只针对当前 session 来设置的 sql_trace.

三. 动态视图和数据字典(也不知道这些视图等是否能用上, 先罗列吧)

这里有很多动态视图和数据字典, 下面一一道来:

数据字典:

dba_tables

dba_tab_columns

dba_clusters

dba_indexes

index_stats

index_histogram

dba_tab_histograms

动态视图: 其中 P 表示 performance tuning, T 表示 Troubleshooting

wait event (这个也是 oracle 一个动态视图, wait events provides information on the sessions that had to wait or must wait for different reasons)

v$event_name

v$session_event: waits for an event for each session that had to wait.

v$session_wait: waits for an event for current active session that are waiting

v$system_event: total waits for an event, all session together.

另外, 还有一些参数可以设置你搜集统计信息的级别:

STATISTICS_LEVEL

TIMED_STATISTICS

TIMED_OS_STATISTICS

DB_CACHE_ADVICE

重要工具 STATSPACK(目前看来这个工具可以得到上面视图一样的内容, 而且更方便)

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

statspack 是一个用户, snapshop 快照存储在表里, 因为 statspack 在执行快照时保存的数据大, 所以最好要创建表空间为 statspack, 然后将所有的 statspack里的所有表都存放在这个表空间里.

1. 安装 statspack: 调用脚本 spcreate.sql

2. 收集统计信息, execute statspack.snap

3. 自动收集统计信息, 调用脚本 spauto.sql

4. 生成report: spreport.sql

5. 有关时间的统计信息, 将参数 TIMED_STATISTICS 设置为 ture.

下面看看 statspack 都能输出哪些我们想要的信息: (注意, 以上的动态视图等也是得到我们想要的信息)

  • database and instance name
  • time at which the snapshots were taken
  • Current sizes of the cache
  • load profile
  • efficiency percentages of the instance top five wait events
  • complete list of wait events
  • information on SQL statements currently in the pool
  • instance activity statistics
  • tablespace and file I/O
  • buffer pool statistics
  • rollback or undo segment statistics
  • latch activity
  • dictionary cache statistics
  • library cache statistics
  • SGA statistics
  • startup values for init.ora parameters

看到上边的内容, 基本可以判断, statspack 输出了我们想要的所有内容.

oracle tuning 工具的更多相关文章

  1. Oracle Tuning (Oracle 性能调整)的一些总结

    Oracle Tuning (Oracle 性能调整)的一些总结 Oracle Tuning (Oracle 性能调整)的一些总结关于Oracle的性能调整,一般包括两个方面,一是指Oracle数据库 ...

  2. Oracle客户端工具出现“Cannot access NLS data files or invalid environment specified”错误的解决办法

    Oracle客户端工具出现"Cannot access NLS data files or invalid environment specified"错误的解决办法 方法一:参考 ...

  3. 电脑上不安装Oracle时,C# 调用oracle数据库,Oracle客户工具

    Oracle的安装包通常都比较大,安装又比较费时,而且如果安装过程中不幸出错,各种蛋疼,即便是安装过N遍的老手,有时候安装起来也觉得挺烦.而工作中,通常服务器上面安装oracle就可以了,我们本地电脑 ...

  4. 客户视角:Oracle ETL工具ODI

    客户视角:Oracle ETL工具ODI 数据集成已成为企业在追求市场份额中的关键技术组件,与依靠手工编码的方式不同,越来越多的企业选择完整的数据集成解决方案来支持其IT战略,从大数据分析到云平台的集 ...

  5. oracle tkprof 工具详解

    oracle  tkprof 工具详解 今天是2013-09-26,进行tkprof工具使用学习,在此记录一下笔记: 一)查看需要跟踪会话信息: select s.sid,s.serial#,s.us ...

  6. Oracle客户端工具安装

    Oracle简易客户端登录工具安装 @[Database|Oracle|客户端工具] [TOC] 引言 Oracle服务的安装是一件的繁琐的事情,我们往往喜欢在本地不安装oracle数据库的方式来访问 ...

  7. oracle12c:通过oracle客户端工具配置tns,并使用sqlldr进行批量导入数据

    通过oracle客户端工具配置tns: 进入oracle配置工具“Net Configuration Assistant”-> 点击“下一步”,完成tns配置. 测试是否tns可用 命令:tns ...

  8. 电脑上不安装Oracle时,C# 调用oracle数据库,Oracle客户工具 【转载】

    http://www.cnblogs.com/jiekzou/p/5047850.html Oracle的安装包通常都比较大,安装又比较费时,而且如果安装过程中不幸出错,各种蛋疼,即便是安装过N遍的老 ...

  9. Oracle诊断工具 - ORA-4030 Troubleshooting Tool

    ORA-4030 说明Oracle服务器进程(server process)无法在操作系统(OS)上分配到足够的内存.   导致ORA-4030 的主要原因有: -物理内存不足 -OS kernel/ ...

随机推荐

  1. 通过NAT实例实现外部访问AWS的ElastiCache资源

    ElastiCache作为AWS的内存缓存组建可以说做的一点也不友好了, 你可以通过ElastiCache创建redis,memcache的实例,却不能被外部访问. 背景 人傻钱多的客户总有人傻钱多的 ...

  2. Java Nio Socket通讯

    Server端: #############服务器端连接请求处理############### public class MultiplexerServer implements Runnable { ...

  3. vue - webpack.prod.conf.js

    描述:webpack打包项目时的配置文件. 命令:yarn run build 或 npm run build 打包后,生成的文件在dist文件夹下 打包后,要在服务器环境下运行!!! 关于怎样运行, ...

  4. SpringMVC请求参数接收总结

    前提 在日常使用SpringMVC进行开发的时候,有可能遇到前端各种类型的请求参数,这里做一次相对全面的总结.SpringMVC中处理控制器参数的接口是HandlerMethodArgumentRes ...

  5. 回顾 git 常用命令

    git init      在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.   git clone      获取一个u ...

  6. windows域相关

    查看域角色: netdom query fsmo

  7. Can rename table but can not truncate table

    一个表无法truncate可是能够rename,这个乍听起来认为好奇怪,以下模拟该过程. 3个session: session1运行truncate和rename操作. session2运行lock表 ...

  8. linux ps查看进程命令详解

    http://linux.net527.cn/Linuxwendang/xitongguanliyuan/39094.htmlLinux操作系统PS命令详细解析 要对系统中进程进行监测控制,用 ps ...

  9. C# EF使用性能消耗列表 https://msdn.microsoft.com/zh-cn/library/cc853327.aspx

    性能注意事项(实体框架) .NET Framework (current version)   其他版本   本主题介绍 ADO.NET 实体框架的性能特征,并提供一些注意事项帮助改善实体框架应用程序 ...

  10. 工作总结 .ToString("000000")

    ; ");//000123 指定格式 Console.WriteLine(ssp); ; ");//123456789 超过了返回原值 Console.WriteLine(ss);