Oracle性能究极优化

来源:asp之家 时间:2010-07-30 13:02:00 

增大 SGA 已经缓冲看来对于性能的提升并不显著,加载时间只提升了 1.73%。下面我们增加 SGA 重做日志的大小:

  DB3: Log Buffer
  Database Block Size 2K
  SGA Buffer Cache 128M
  SGA Shared Pool 128M
  SGA Redo Cache 16M
  Redo Log Files 16M
  Tablespaces Dictionary
  TPC Results Load Time (Seconds) 41.39
  Transactions / Second 10.088

  我们可以看到加载时间提升了 17.35%,TPS 也提升了 9.33%。因为加载和同时插入,更新,删除需要比 8M 大的空间,但是看起来增加内存性能并没有显著提升,我们加大块大小:

  DB4: 4K Block
  Database Block Size 4K
  SGA Buffer Cache 128M
  SGA Shared Pool 128M
  SGA Redo Cache 16M
  Redo Log Files 16M
  Tablespaces Dictionary
  TPC Results Load Time (Seconds) 17.35
  Transactions / Second 10.179

  我们看到加载时间提升了 138%!而对 TPS 值没有很大的影响。下面一个简单的念头是表空间的管理从目录切换为本地:

  DB5: Local Tablespaces
  Database Block Size 4K
  SGA Buffer Cache 128M
  SGA Shared Pool 128M
  SGA Redo Cache 16M
  Redo Log Files 16M
  Tablespaces Local
  TPC Results Load Time (Seconds) 15.07
  Transactions / Second 10.425

  下面我们把数据库块加大到 8K 来看结果:

  DB6: 8K Block
  Database Block Size 8K
  SGA Buffer Cache 128M
  SGA Shared Pool 128M
  SGA Redo Cache 16M
  Redo Log Files 16M
  Tablespaces Local
  TPC Results Load Time (Seconds) 11.42
  Transactions / Second 10.683

  看来结果并不坏,我们没有理由继续增加块大小了,我们还没有根据 CPU 个数调整相应的参数,这次我们设置 I/O 的进程数来继续调整:

  DB7: I/O Slaves
  Database Block Size 8K
  SGA Buffer Cache 128M
  SGA Shared Pool 128M
  SGA Redo Cache 16M
  Redo Log Files 16M
  Tablespaces Local
  dbwr_io_slaves 4
  lgwr_io_slaves (derived) 4
  TPC Results
  Load Time (Seconds) 10.48
  Transactions / Second 10.717

  我们的测试是基于 Red Hat 6.2 进行的,内核版本为 2.2.14-5 smp。对于 Linux 的内核而言,有将近几百个参数可以调整,包括对 CPU 类型,SMP 支持,APIC 支持,DMA 支持,IDE DMA 缺省参数的使用以磁盘限额支持。根据 Oracle 的文档,我们要做的主要调整是共享内存和信号量的大小,SHMMAX 最少配置 0x13000000,SEMMNI, SEMMSL 和 SEMOPN 分别至少设置 100, 512, 100。这些参数的设置可以通过下面的命令实现:

  # echo 0x13000000 >/proc/sys/kernel/shmmax
  # echo 512 32000 100 100 >/proc/sys/kernel/sem

  OS1: 单内核和 IPC

  TPC Results
  Load Time (Seconds) 9.54
  Transactions / Second 11.511

标签:oracle,性能
0
投稿

猜你喜欢

  • 一段有趣的js代码的研究

    2008-04-29 21:47:00
  • mysql使用LOAD语句批量录入数据方法

    2010-03-09 16:31:00
  • css设计的具有亲和力的表格

    2008-03-16 19:28:00
  • asp 在线备份与恢复sql server数据库的代码

    2010-07-31 18:52:00
  • ASP长文章分页代码实例

    2007-10-02 17:04:00
  • CSS? 3D? 3D CSS?

    2009-05-13 13:10:00
  • jQuerify书签

    2008-06-16 12:16:00
  • 使用ASP遍历并列表显示目录文件

    2009-11-08 18:32:00
  • PHP和JS之间的数据交互并处理

    2023-05-25 00:57:08
  • asp如何用数据库制作一个多用户版的计数器?

    2010-06-16 09:51:00
  • asp如何在ADO中客户端利用好缓存技术?

    2010-06-17 12:50:00
  • 用于打印的页面设计

    2009-07-06 12:47:00
  • 从Oracle 表格行列转置说起第1/2页

    2009-09-24 12:51:00
  • 选择utf-8还是GB2312?

    2009-06-19 13:05:00
  • 精致的web设计

    2009-12-04 19:07:00
  • MySQL的之表结构修改

    2012-01-05 19:16:17
  • MySQL最好的优化技巧

    2009-10-27 12:05:00
  • 怎样在不同版本SQL Server中存储数据

    2009-01-20 13:11:00
  • 如何把小写数字转换成英文?

    2009-11-06 13:59:00
  • Http头 Range、Content-Range

    2010-06-25 19:19:00
  • asp之家 网络编程 m.aspxhome.com