《Oracle大型数据库系统在AIX/UNIX上的实战详解》集中讨论的继续。
做了一周关于Oracle在32位windows上实施的培训,恰好期间有几位Oracle用户邮件询问关于Windows系统调整问题。正好吧,把准备的一些内容共享出来。
如果Oracle使用大于1.7的内存,需要一些特写的设置。参见下面来自metalink的论点:
Large page support is a feature of Oracle Database 10g Release 1 (10.1) or later. It
provides a performance boost for memory-intensive database instances running on
Windows Server 2003. By taking advantage of newly introduced operating system
support, Oracle Database 10g Release 1 (10.1) or later can now make more efficient use
of processor memory addressing resources. Specifically, when large page support is
enabled, the CPUs in the system will be able to access the Oracle Database buffers in
RAM more quickly. Instead of addressing the buffers in 4KB increments, the CPUs are
told to use 2 MB page sizes in Physical Address Extension (PAE) mode and 4MB page
sizes in non-PAE mode when addressing the database buffers.
由于32位的CPU的在windows系统中2G给系统用2G给应用程序使用,如系统及oracle参数不作修改时,oracle的SGA内存使用不能超过1.7G
但可以对Windows参数进行修改:
1. 修改boot.ini文件,在其中添加/3GB选项或/PAE,甚至二者都有之。
WINDOWS="Microsoft Windows" /3GB
WINDOWS="Microsoft Windows" /PAE
2.设置Oracle运行环境,设置windows 注册表:
使用 regedit工具在HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1中找到AWE_WINDOW_MEMORY参数,修改为oracle需要内存的大小,如5GB,以字节方式。
3.授予Oracle用户在内存锁定页的权限,方法为:管理工具--> 域安全策略--> 本地安全策略 -->锁定内存页,加入ora_dba组。
4:设置oracle参数如下:
取消数据:db_cache_size、sga_max_size等10g参数;
添加参数:
db_block_buffers
USE_INDIRECT_DATA_BUFFERS=TRUE
参见metalink :Implementing Address Windowing Extensions (AWE) or VLM on Windows Platforms 文平