太小的缓沖池会产生过多的不必要的物理 I/O太大的缓沖池使系统处在操作系统页面调度的风险中并消耗不必要的 CPU 周期来管理过度分配的内存正好合适的缓沖池大小就在太小和太大之间的某个平衡点上适当的大小存在于回报将要开始减少的点上如果您没有使用工具来自动进行回报减少分析那么您应该在不断增加缓沖池大小上科学地测试缓沖池性能(命中率I/O 时间和物理 I/O 读取率)直到达到最佳的缓沖池大小因为业务一直在变动和增长所以应该定期重新评估最佳大小决策
十SQL 成本分析
一条糟糕的 SQL 语句会彻底破坏您的一整天我不止一次地看到一个相对简单的 SQL 语句搞糟了一个调整得很好的数据库和机器对于很多这些语句天底下(或在文件中)没有 DB UDB 配置参数能够纠正因错误的 SQL 语句导致的高成本的情况
更糟糕的是DBA 常常受到种种束缚不能更改 SQL(可能是因为它是应用程序供应商提供的例如 SAP PeopleSoft或 Siebel)这给 DBA 只留下三条路可走
更改或添加索引
更改群集
更改目录统计信息
另外如今健壮的应用程序由成千上万条不同的 SQL 语句组成这些语句执行的频率随应用程序的功能和日常的业务需要的不同而不同SQL 语句的实际成本是它执行一次的成本乘以它执行的次数
每个 DBA 所面临的重大的任务是识别具有最高实际成本的语句的挑战并且减少这些语句的成本
通过本机 DB Explain 实用程序一些第三方供应商提供的工具或 DB UDB SQL Event Monitor 数据您可以计算出执行一次 SQL 语句所用的资源成本但是语句执行频率只能通过仔细和耗时地分析 DB UDB SQL Event Monitor 的数据来了解
在研究 SQL 语句问题时DBA 使用的标准流程是
[] [] [] [] [] [] [] [] []