程序员备忘

java技术
posts - 8, comments - 0, trackbacks - 0, articles - 0

oracle

Posted on 2009-07-21 11:53 波波^_^ 阅读(153) 评论(0)  编辑  收藏
在32位的操作系统(如windows server 2003)oracle使用的总内存有2G限制。无论你为系统配置多大的物理内存,正常情况下都不能使oracle使用超过2G的内存(包含SGA、PGA等)。windows 提供了一种叫4GT(4G Tuning)的技术,使得oracle使用超过2G(不超过3G)的内存成为可能。

oracle使用超过2G内存,不超过3G内存的具体设置步骤:

1 首先应卸载实例,关闭oracle服务。

2 打开操作系统3G开关:
  ....修改boot.ini文件,在启动windows项中添加 /3G 参数。修改过后的boot.ini文件应该类似以下内容:
  [boot loader]
  timeout=8
  default=multi(0)disk(0)rdisk(0)partition(1)
  [operating systems]
  multi(0)disk(0)rdisk(0)partition(1)="Microsoft Windows 2000 Advanced Server" /3G /fastdetect
  注意在启动win2K AdvServer的一栏里,多了一个 /3G 参数。这个参数的作用,就是让windows启动时,将自己的内核及支持程序装载到内存地址 0xC0000000 到 0xFFFFFFFF 之间,给应用程序留出3G的空间来。

3 修改oralce 的 init.ora 文件
   方法: (sid以szhii为例)
A、        在“运行”输入cmd
B、        C:\Documents and Settings\Administrator>sqlplus /nolog
C、        Sql> conn sys/oracle@szhii as sysdba
D、        Sql> create pfile from  spfile;
说明:(建创文件放在$ \ora92\database \下,文件名称为init+(sid名称).ora (如sid名称为 szhii,则initszhii.ora) 备份此文件,然后到此文件进行修改)
修改内容如下:
  ..1) 确定oracle的缓冲区及共享池大小,假设作如下定义:
  ........ db_block_size = 4096
  ........db_block_buffers = 262144  # 缓冲区大小为1G (此项与文件中的db_cache_size冲突,因此删除此项或屏闭此项)
  ........ share_pool_size = 314572800 # 使用300M共享池
  
  ..2) 添加下列各项内容:
  ........ use_indirect_data_buffers = true
  ........ # 告诉oracle可以使用间接内存(即可以使用windows让出来的1G内存作为数据缓冲区)   ........ pre_page_sga = true
  ........ # 把oracle SGA锁定到内存中,不产生页面交换文件(8i的参数可能是lock_sga = true)
  ........ # 对于一个有4G物理内存的系统来讲,可能这一个参数并不是必须的

4 修改注册表,定义oracle的DBbuffer使用常规内存大小
... AWE_WINDOW_MEMORY参数值,也就是在HKEY_LOCAL_MACHINE\ Software\Oracle\HOME0下中添加一个二进制值,名称为AWE_WINDOW_MEMORY ,值的单位为字节,大小为你需要让oracle使用普通内存作为缓存的大小(不是windows让出来的1G,而是内存地址在0x00000000 到 0x7FFFFFFF 之间的内存大小)。假如设为209715200,即200M大小,那么oracle的数据缓冲区将占用200M的普通内存,其余部分(1G - 200M = 824M)则使用间接内存。
(说明:修改完成以后看量否正确可以使用修改的文件启动数据库,具体方法如下:
Sql> startup pfile=' D:\oracle\ora92\database\INITszhii.ORA';
正常启动说明修改成功,否则修改不成功。
修改成功以后,调用生成spfile
Sql> create spfile from pfile

5 重新启动操作系统,启动数据库。OK,你现在的 oracle 可以使用2G + 824M内存了。

只有注册用户登录后才能发表评论。


网站导航: