性能检查指导方案-PartII
来源:互联网 发布:查看linux 文本编码 编辑:程序博客网 时间:2024/06/14 02:36
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
存储性能评估
在存储性能评估的时候,我们使用磁盘性能指数(DPI,DiskPerformanceIndex),下表列出了DPI中的各项指数,这个评分系统并不意味着对磁盘的使用和分配的全方位评估,而只是代表一个晴雨表,反映当前磁盘的使用和分配上是否存在需要改进或者注意的地方。
MPI指数
分类
所需等级
最高分
调整表和索引
是
30
表的行连接问题
无
30
分离关键的文件
是
30
回滚段的平衡
30
临时段的平衡
30
使用最多的前10个SQL的磁盘使用率
<5%
60
是否已经调整使用磁盘最多的前25个SQL
是
40
MPI指数
总分
250
1.调整表和索引
由于表和索引的数据块通常是被同时读取的,所以应该尽量将表和其相关联的索引放置在不同的磁盘上,以便减少文件的I/O冲突。
检查方法:
selecti.index_name,t.table_name,t.tablespace_name
fromuser_tablest,user_indexesi
wheret.table_name=i.table_name
andt.tablespace_name=i.tablespace_name;
返回结果是创建在相同表空间中的表和相关联的索引。建议创建新的表空间用于专门存放索引,并将当前的索引rebuild到新创建的表空间中。
alterindexidx_namerebuildtablespacets_name;
评估准则:
等级
分数
表和索引放在同一磁盘上
0
存储使用了磁盘阵列,没有进一步调整
20
存储使用了磁盘阵列,对于RAID类型已经作过调整
30
表和索引已经规划在不同磁盘上
30
2.表的行链接问题
当更新一张表,而数据块中又没有足够的剩余空间来容纳所作的修改时,就会发生“行链接”现象,该记录被链接到另外一个有足够空间的数据块中,也就是一条记录跨越了多个数据块,这样在读取该记录的时候就会消耗更多的I/O,当数据库中有大量的“行链接”现象存在时,数据库的整体性能就会下降。
检查方法:
sqlplus/nolog
connectapp_user/password
SQL>@$ORACLE_HOME/rdbms/admin/utlchain.sql
SQL>analyzetable<table_name>listchainedrows;
SQL>selectcount(*)chained_rows,table_name
fromchained_rows
groupbytable_name;
如果没有返回任何行,则表示没有“行链接”现象。否则将按照已经分析过的表显示每张表中有多少记录出现了“行链接”现象。
“行链接”现象的产生跟PCTFREE参数的设置不当有关系。PCTFREE值默认为10%,如果系统中存在大量行链接,表示这个参数指定的块保留空间过小,不足以容纳块中所有记录的更新操作。此时应该增大相应表的PCTFREE值。
评估准则:
等级
分数
存在行链接现象
0
不存在行链接现象
30
3.分离关键的Oracle文件
无论是出于性的考虑还是性能的考虑,都建议将关键的Oracle文件分布在可用的独立磁盘上。
首先在错误出现之后,用来被恢复的数据文件和用来恢复的控制文件,重作日志文件,归档日志文件应该分离存放。如果有可能,将下列各个关键文件分布在不同的磁盘上。
系统表空间(SYSTEM),临时表空间(TEMP),回滚表空间(UNDO),联机重作日志文件(REDO)和归档日志文件(ARCH),经常访问的用户表空间,经常访问的用户索引表空间,盘,$ORACL_EBASE中的关键Oracle文件。
至少联机重作日志文件(REDO)和归档日志文件(ARCH)应该跟其它文件存放在不同的磁盘上,并且由于日志文件的大部分时间为只写属性,所以需要考虑RAID5在写方面的弱势,尽量不要将日志文件存放在RAID5的阵列组上。
检查方法:
selectfile_name,tablespace_name,bytes
fromdba_data_files
unionall
selectfile_name,tablespace_name,bytes
fromdba_temp_files
unionall
selectnamefile_name,NULL,NULL
fromv$controlfile
unionall
selectmemberfile_name,to_char(a.group#)tablespace_name,b.bytesbytes共4页 1
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
存储性能评估
在存储性能评估的时候,我们使用磁盘性能指数(DPI,DiskPerformanceIndex),下表列出了DPI中的各项指数,这个评分系统并不意味着对磁盘的使用和分配的全方位评估,而只是代表一个晴雨表,反映当前磁盘的使用和分配上是否存在需要改进或者注意的地方。
MPI指数
分类
所需等级
最高分
调整表和索引
是
30
表的行连接问题
无
30
分离关键的文件
是
30
回滚段的平衡
30
临时段的平衡
30
使用最多的前10个SQL的磁盘使用率
<5%
60
是否已经调整使用磁盘最多的前25个SQL
是
40
MPI指数
总分
250
1.调整表和索引
由于表和索引的数据块通常是被同时读取的,所以应该尽量将表和其相关联的索引放置在不同的磁盘上,以便减少文件的I/O冲突。
检查方法:
selecti.index_name,t.table_name,t.tablespace_name
fromuser_tablest,user_indexesi
wheret.table_name=i.table_name
andt.tablespace_name=i.tablespace_name;
返回结果是创建在相同表空间中的表和相关联的索引。建议创建新的表空间用于专门存放索引,并将当前的索引rebuild到新创建的表空间中。
alterindexidx_namerebuildtablespacets_name;
评估准则:
等级
分数
表和索引放在同一磁盘上
0
存储使用了磁盘阵列,没有进一步调整
20
存储使用了磁盘阵列,对于RAID类型已经作过调整
30
表和索引已经规划在不同磁盘上
30
2.表的行链接问题
当更新一张表,而数据块中又没有足够的剩余空间来容纳所作的修改时,就会发生“行链接”现象,该记录被链接到另外一个有足够空间的数据块中,也就是一条记录跨越了多个数据块,这样在读取该记录的时候就会消耗更多的I/O,当数据库中有大量的“行链接”现象存在时,数据库的整体性能就会下降。
检查方法:
sqlplus/nolog
connectapp_user/password
SQL>@$ORACLE_HOME/rdbms/admin/utlchain.sql
SQL>analyzetable<table_name>listchainedrows;
SQL>selectcount(*)chained_rows,table_name
fromchained_rows
groupbytable_name;
如果没有返回任何行,则表示没有“行链接”现象。否则将按照已经分析过的表显示每张表中有多少记录出现了“行链接”现象。
“行链接”现象的产生跟PCTFREE参数的设置不当有关系。PCTFREE值默认为10%,如果系统中存在大量行链接,表示这个参数指定的块保留空间过小,不足以容纳块中所有记录的更新操作。此时应该增大相应表的PCTFREE值。
评估准则:
等级
分数
存在行链接现象
0
不存在行链接现象
30
3.分离关键的Oracle文件
无论是出于性的考虑还是性能的考虑,都建议将关键的Oracle文件分布在可用的独立磁盘上。
首先在错误出现之后,用来被恢复的数据文件和用来恢复的控制文件,重作日志文件,归档日志文件应该分离存放。如果有可能,将下列各个关键文件分布在不同的磁盘上。
系统表空间(SYSTEM),临时表空间(TEMP),回滚表空间(UNDO),联机重作日志文件(REDO)和归档日志文件(ARCH),经常访问的用户表空间,经常访问的用户索引表空间,盘,$ORACL_EBASE中的关键Oracle文件。
至少联机重作日志文件(REDO)和归档日志文件(ARCH)应该跟其它文件存放在不同的磁盘上,并且由于日志文件的大部分时间为只写属性,所以需要考虑RAID5在写方面的弱势,尽量不要将日志文件存放在RAID5的阵列组上。
检查方法:
selectfile_name,tablespace_name,bytes
fromdba_data_files
unionall
selectfile_name,tablespace_name,bytes
fromdba_temp_files
unionall
selectnamefile_name,NULL,NULL
fromv$controlfile
unionall
selectmemberfile_name,to_char(a.group#)tablespace_name,b.bytesbytes共4页 1
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- 性能检查指导方案-PartII
- 性能检查指导方案-PartI
- 数据库性能检查指导方案 - Part I
- 数据库性能检查指导方案 - Part II
- 数据库性能检查指导方案
- ZT:数据库性能检查指导方案
- 数据仓库的注意事项(PartII)
- JSR75 PartII PIM
- android framework analysis(partII)
- android framework analysis(partII)
- SQL Profiles-PartII
- **系统性能优化方案
- 系统性能测试方案
- Hibernate性能优化方案
- 性能测试方案模板
- mysql 性能优化方案
- mysql 性能优化方案
- 系统性能测试方案
- 「基础」C#中的继承,重载,委托,你真的弄明白了吗?
- FETCH
- 使用DirectShow驱动摄像头
- deleted和inserted是逻辑(概念)表。
- 本人用foxpro写的房屋产权产籍管理系统
- 性能检查指导方案-PartII
- 昨天到安徽宿松一个客户那里搞维护的经验教训
- 用一条SQL完成数据表的行统计
- STOREDPROCEDURES:GOODORBAD(存储过程:好还是坏)
- 数据仓库与企业应用集成(二)
- 数据仓库与企业应用集成(一)
- 如果对字符型编号字段(如1-2)进行排序
- 缩小SQLSERVER日志文件
- 存储过程中建立一个表时出错,为什么?