电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

调整的信息来源


发布日期:2023/8/16
 

Alert Log 文件中记录的与性能有关的信息

ORA不能扩展临时段

ORA不能扩展表段

ORA不能扩展回滚段

ORA到达了表的最大的Extents

检查点未完成(Checkpoint not complete)

线程推进日志序列(Thread n Advanced to Log Sequence n)

ORA快照过旧

后台跟蹤文件

自动生成

相关参数BACKUPGROUND_DUMP_DEST

事件跟蹤文件

设置后生成

相关参数EVENT BACKUPGROUND_DUMP_DEST USER_DUMP_DEST

用户跟蹤文件

相关参数SQL_TRACEUSER_DUMP_DEST MAX_DUMP_FILE_SIZE

激活用户跟蹤的三种方法

实例层次的跟蹤配置参数SQL_TRACE = TRUE | FALSE然后重启实例

用户层次的自行实置Alter session set sql_trace = true | false

用户层次的DBA设置Exec dbms_systemset_sql_trace_in_session(SID SERIAL# TRUE | FALSE)

V$视图和DBA_视图

区别

V$视图通常是单数DBA视图通常是复数例如V$DATAFILE与DBA_DATA_FILES

当数据库处于Nomout或者Mount时许多V$视图已经是可用的而DBA视图必须在数据库处于Open时才可用

V$视图查询出来的数据多小写DBA视图查询出的数据通常大写所以在写WHERE条件时需特别小心

V$视图中包含的是自实例启动以来的动态数据在数据库关闭后会消失查询V$视图时必须关注时效性DBA视图中包含的是静态数据

V$视图的基表是X$表X$表是存在于内存中的虚表DBA视图的基表是数据字典表如SYSOBJ$ SYSFILE$等这两种基表都很少有文档

最常用的V$视图

表名 描述

V$SGASTAT 显示SGA组件大小的信息

V$EVENT_NAME 显示当前版本的所有等待事件

V$SYSTEM_EVENT 自实例启动已来的等待事件

V$SESSION_EVENT 目前连接会话的等待事件

V$SESSION_WAIT 目前连接会话正在发生的等待事件

V$STATNAME 显示当前版本的所有统计名称

V$SYSSTAT 自实例启动以来的统计

V$SESSTAT 目前连接会话的统计

V$SESSION 目前连接会话的信息

V$WAITSTAT 块竞争的统计

最常用的DBA视图(有些栏位的值需要分析表或索引后才会有值)

表名 描述

DBA_TABLES 表的存储统计等

DBA_INDEXES 索引的存储统计等

INDEX_STATS 索引的深度和键值的离散度等

DBA_DATA_FILES 数据文件的命名位置大小

DBA_SEGMENTS 段的相关信息

DBA_HISTOGRAMS 表索引的柱状图定义信息

Oracle 提供的脚本和包

下面提到的脚本都位于%ORACLE_HOME%\RDBMS\ADMIN目录下有些只需运行一次有些需要每次都运行

UTLBSTATSQL 和 UTLESTATSQL

这些脚本的功能绝大部分已被STATSPACK所取代

STATSPACK

配置STATSPACK在SQL*Plus下运行spcreatesql这个脚本运行时调用另外三个脚本(spcusrsqlspctabsqlspcpkgsql)运行过程中会询问perfstat方案的密码默认表空间和临时表空间可以通过这三个脚本的运行日志(spcusrlisspctablisspcpkglis)查看配置是否成功

perfstat方案的默认表空间需要有足够的空间来容纳目前的对象和将来的快照数据

查看日志如果发现有错误运行spdropsql来清除已创建的对象然后重新运行spcreatesql

配置成功后生成快照有两种方法手工运行exec statspacksnap; 运行spautosql脚本创建job来定时生成快照

生成性能报表运行spreportsql脚本脚本运行过程中要求输入三个参数开始快照号结束快照号报表名两次选择的快照号需要是在实例的一次运行期间的不同点的快照否则就没有参考意义

statspack报表含有各个方面的性能数据如何理解这些数据贯穿整本书

上一篇:如何查看各个表空间占用磁盘情况?

下一篇:一次ORA-4030问题诊断及解决(一)