ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 32位的WINDOW服务器通过4GT技术能让应用程序使用超过2G的内存 。[zt]

32位的WINDOW服务器通过4GT技术能让应用程序使用超过2G的内存 。[zt]

原创 Linux操作系统 作者:lorikyo 时间:2019-04-15 19:03:04 0 删除 编辑
oracle使用超过2G内存的具体设置步骤:   
   
  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  文件   
   
  ..1)  确定oracle的缓冲区及共享池大小,假设作如下定义:   
   
  ........  db_block_size  =  4096   
   
  ........  db_block_buffers  =  262144  #  缓冲区大小为1G   
   
  ........  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使用常规内存大小   
   
  ....在注册表  _Local_Machine中添加一个二进制值,名称为AWE_WINDOW_MEMORY  ,值的单位为字节,大小为你需要让oracle使用普通内存作为缓存的大小(不是windows让出来的1G,而是内存地址在0x00000000  到  0x7FFFFFFF  之间的内存大小)。假如设为209715200,即200M大小,那么oracle的数据缓冲区将占用200M的普通内存,其余部分(1G  -  200M  =  824M)则使用间接内存。   
   
  5  重新启动操作系统,启动数据库。OK,你现在的  oracle  可以使用2G  +  824M内存了。 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/92530/viewspace-517464/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2004-07-18

  • 博文量
    121
  • 访问量
    84069