分享

32Windows 上Oracle突破1.7G内存限制(一)

 qrzhcd 2013-06-13

系统环境:

Windows 2003 32

CPU 8核

内存 16G

系统设置

1、修改C:\boot.ini,增加 /3GB /PAE

备注:在C盘下看不到boot.ini文件,请设置工具--文件夹选项--查看选项卡相关选项

boot.ini内容如下:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /3GB /PAE /noexecute=optout /fastdetect

说明:/3GB enables a single process to attach 3GB of memory.

/PAE enables access to memory above 4GB to be mapped for a process.

这两个参数可以一起使用,也可以单独使用。

if mem<=4G,就只需要设置/3GB即可

if mem> 4G,/3GB /PAE可以同时设置(这个时候最大只能使用到16G,如果要使用更多的内容,需要去掉/3GB参数)

2、授权:给运行Oracle数据库的操作系统帐户,授予"Lock Pages in Memory"的系统权限

       开始--控制面版-管理工具-本地安全策略-用户权限分配-选种内存中锁定页面-添加用户。

       说明:运行Oracle数据库的操作系统帐户默认为本地用户。一般都为administrator.所以把administrator添加进去就OK了。

3、修改注册表,Local_Machine/ software/oracle-home0中加入AWE_WINDOW_MEMORY,值為1073741824(此为缺省值为1G)

4、重新启动系统

配置oracle启动文档

5、启动oracle实例,创建测试pfile文件

       运行-cmd-type "sqlplus"-type "sys as sysdba"-type 密码

       create pfile = 'c:\initest.ora' from spfile;

6、关闭oracle例程。

              SQL> shutdown immediate

                     数据库已经关闭。

                     已经卸载数据库。

                     ORACLE 例程已经关闭。

7、修改测试测试pfile文件

       打开initest.ora文件,添加下面内容:

       *.USE_INDIRECT_DATA_BUFFERS = TRUE

       *.DB_BLOCK_BUFFERS = 655360

       *.statistics_level='ALL'

       *.lock_sga=TRUE

       *.pre_page_sga=TRUE

       *.shared_pool_size=814572800

       并修改*.sga_target使其植为“0

       保存

8、用修改后的测试pfile文件启动oracle例程

       SQL> startup pfile='c:\initest.ora';

       ORACLE 例程已经启动。

       Total System Global Area 6232735744 bytes

       Fixed Size                  1249392 bytes

       Variable Size             855642000 bytes

       Database Buffers         5368709120 bytes

       Redo Buffers                7135232 bytes

       数据库装载完毕。

       数据库已经打开。

9、如果启动没有问题,可以用测试pfile文件创建spfile文件

              SQL> create spfile from pfile ='c:\initest.ora';

              文件已创建。

10、关闭ORACLE 例程后再用spfile文件启动ORACLE 例程

   SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup

ORACLE 例程已经启动。

Total System Global Area 6232735744 bytes

Fixed Size                  1249392 bytes

Variable Size             855642000 bytes

Database Buffers         5368709120 bytes

Redo Buffers                7135232 bytes

数据库装载完毕。

数据库已经打开。

该帖并没有对相关参数和原理做过多阐述,如果有兴趣可以到网上找找相关参数和原理说明。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多