SGA extension on Windows
For 32-bit windows. Windows cannot use memory larger than 4 GB. Generally, 2 GB of memory is reserved for the process and 2 GB of memory is reserved for the core. 3G can be allocated to the process on Windows2000 Advanced Server, and 1g is left to the core.
1. if the machine has less than 4 GB memory, you can use physical address extensions (PAE) or address extenwing extensions (AWE) for expansion. If the machine memory is larger than 4 GB, you can only use awe for expansion.
Awe supports the following Windows operating systems:
Windows 2000 datacenter Server
Windows 2000 Advanced Server
Windows 2003 datacenter edition (32bit)
Windows 2003 Enterprise Edition (32bit)
Awe does not support the following Windows operating systems:
Windows 2000 Server (standard)
Windows2000 Professional
Windows XP Home Edition
Windows XP Professional
Windows 2003 Standard Edition
Windows 2003 web edition
Versions of Oracle databases supported by awe:
Oracle 8.1.6.x
Oracle 8.1.7.x
Oracle 9.2.x
Awe does not support oracle9.0.1.x
In the standard version of oracle9.2.0.1, if you set use_indirect_data_buffers = true, an error will be reported when the system is started:
ORA-439-feature not enabled: very large memory.
This is a bug (#2520796) in Oracle 9.2.0.1 of the Standard Edition, which is fixed in oracle9.2.0.2.
2. Start awe on the Operating System
On the operating system, awe can be enabled by adding/PAE to the boot. ini file.
For example:
Multi (0) disk (0) RDISK (0) Partition (1) \ WINNT = "Microsoft Windows 2000 Advanced Server"/PAE
You can also use/PAE and/3G on the same machine at the same time. For example:
Multi (0) disk (0) RDISK (0) Partition (1) \ WINNT = "Microsoft Windows 2000 Advanced Server"/3 GB/PAE
However, you can use up to 16 GB of memory at the same time. If you use more than 16 GB of memory, you must select one of them.
3. Enable awe on Oracle
First, you must set the parameters in the startup parameter file.
Use_indirect_data_buffers = true
If this parameter is set, the db_cache_size parameter cannot be used for oracle9.2.0, but only the db_block_buffers parameter can be used.
The extended memory can only be added to the buffer cache for use. Therefore, you can only increase the db_block_buffers parameter to expand the SGA zone.
4. awe_window_memory implements fault resolution
You do not need to set the minimum value of awe_window_memory when starting a database in oracle8.1.7 or earlier versions. In oracle9.2.0, the minimum value of awe_window_memory must be set through db_block_lru_latches parameter in oracle8.1.7, in oracle9.2.0, the implicit parameter _ db_block_lru_latches is used. The minimum value of awe_window_memory in oracle9.2.0 is calculated by the following formula:
Min (awe_window_memory) = (4096 * db_block_size * _ db_block_lru_latches)/8
_ Db_block_lru_latches = (max buffer pools * sets_per_pool)
Max buffer pools is a constant, equal to 8, sets_per_pool is a variable, and its size is determined by whether to enable vlm (that is, set use_indirect_data_buffers = true:
Sets_per_pool = 2 * cpu_count (vlm enabled)
Sets_per_pool = CPU count/2 (vlm not enabled)
For example:
CPU's = 16
DB _ block_size = 8192
Total Ram = 16 GB
Sets_per_pool = 2 * cpu_count = 32
_ Buffers = (max buffer pools * sets_per_pool) = 8*32 = 256 min (awe_window_memory) = (4096 * db_block_size * _ db_block_lru_latches)/8 = (4096*8192*256) /8 = 1073741824 bytes = 1024 MB
In this way, the awe_window_memory value under HKLM \ SOFTWARE \ oracle \ homex in the Windows registry should be at least 1024 MB; otherwise, an error will be prompted:
ORA-27102 out of memory
OSD-00034 message 34 not found; Product = RDBMS; facility = sosd
O/s error: (OS 8) Not enough storage is available to process this command
Source: http://www.itpub.net/showthread.php? S = & amp; threadid = 124424 & perpage = 10 & amp; pagenumber = 1