Windows 2003 Ent
Oracle 10g r2 32bit网上很多都是8i,9i的,求给个10g的完整方案

解决方案 »

  1.   

    关注,没记错的话,32位的跟内核有关
    引用相关内容:
    在32位Linux平台,至少都有两套内核供用户使用。一个是smp核心,一个是hugemem核心。两个核心的区别在于直接映射的内核数据代码地址空间的区别:SMP 核心:在x86架构下,虚拟地址空间的大小为4G。在这4G空间中,用户空间占3G (0×00000000到0xbfffffff),核心空间占1G(0xc0000000到0xffffffff)。这样的分配策略称为3G/1G分配。具体的分配方式如下:1. 0GB-1GB User space - Used for text/code and brk/sbrk allocations (malloc uses brk for small chunks)2. 1GB-3GB User space - Used for shared libraries, shared memory, and stack; shared memory and malloc use mmap (malloc uses mmap for large chunks)3. 3GB-4GB Kernel Space - Used for the kernel itself这种分配方式对于拥有1G物理内存以下的系统是没有任何问题的,即使超过1G物理内存,3G/1G分配策略也没有什么问题,因为内核可以在高端内存区域 (物理地址1G以上的内存)中存放一些内核数据结构(比如页缓冲等)。然而,随着物理内存的增多,3G/1G分配策略的问题也逐渐会暴露出来。这是因为一些关键的内核数据结构 (比如用于管理物理内存的mem_map[]) 是存放在1G核心空间之内的。对于32G内存的系统,mem_map[]会占用近 0.5G的低端内存(物理地址896M以下的内存),这样留给核心其他部分的内存就不到所有内存的1.5%;而对于64G内存的系统,mem_map[] 本身就会耗尽所有的低端内存,造成系统无法启动。但是把mem_map[]放到高端内存的做法也不太实际,因为mem_map[]和内存管理,体系结构相关底层实现,文件系统以及驱动等几乎所有的核心的关键部分均有联系,这时候就需要使用hugemem核心了。hugemem 核心:与SMP的3G/1G策略不同,hugemem 使用4G/4G分配方式。可以使核心空间由1G增加到4G,而用户空间也由3G增加到4G。相比3G/1G分配策略,对于4G物理内存系统,使用4G/4G分配可以增加低端内存达3倍以上,而对于32G物理内存系统,则会有更多的提升,达到原来的6倍。 理论上,4G/4G策略可以支持物理内存达200G的x86系统(如果硬件没有限制的话),即使对于这样的系统,4G/4G策略也能保证留有1G可用的低端内存。Oracle 10g Release 2:挂载SGA的起始地址为0×20000000(0.5GB)从这个结果可以看出,理论上若使用3G/1G的smp核心,Oracle 10g Release 2 的SGA可设置到 3GB - 0.5GB = 2.5GB 。
    相同的,使用 4G/4G 的hugemem 核心能够获得多大的SGA 就很清楚了。所以建议使用64位操作系统64位的oracle
      

  2.   

    32位突破2G?还是安装64位系统,安装64位的Oracle吧。
      

  3.   

    数据库 客户程序,不在一台机器上不就好了建议上64位Linux +64位oracle10 
    oracle在win平台上64位的只支技安腾的
      

  4.   

    关注一下,看你能找到方法吗?32位的windows2003,比32位的linux还麻烦
      

  5.   


    应用服务器和数据库服务器一台么,如果可以分开的话,数据库服务器64位就可以了。32bit 突破 2G 就是可以的话,也顶多到2.5G,也没有太大的意义, 
      

  6.   

    听Dell的售后技术支持说。Windows平台最大支持单个进程是3G内存。所以Oracle运行在Windows平台上最大内存只能利用3G。感觉还是换用Linux平台比较好。