在AIX4.3.3及以上版本中,共享内存中的分页可利用-虚拟内存管理程序(VMM)来固定,为支持此项工作,
必需设置两项: 1.在Oracle数据库的init.ora文件中指定 LOCK_SGA=TRUE 来打开“pin”标记。
2.在AIX操作系统中设置v_pinshm=1.
3.使用到的命令vmtune(vmo)、IPCS.
以下为实际操作前后的情况:
一、设置前的系统状态:
A.Oracle SGA 状态
SQL*Plus: Release 10.1.0.2.0 - Production on Sat May 19 21:03:27 2007
Copyright (c) 1982, 2004, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Release 10.1.0.2.0 - 64bit Production
SQL> select to_char(sysdate,'YYYY-MM-DD HH:MI:SS') from dual;
TO_CHAR(SYSDATE,'YY
-------------------
2007-05-19 09:04:13
SQL> show parameter lock_sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
B.AIX操作系统关于“内存锁定SGA”开启状态〔v_pinshm〕:
# /usr/samples/kernel/vmtune |grep pin
maxpin = 1677722
maxpin% = 80
pinnable_frames = 1862687
v_pinshm = 0
##########################################################################################
Metalink上给出修改参考三步骤:
1.$ /usr/sbin/vmo -r -o v_pinshm=1
2.$ /usr/sbin/vmo -r -o maxpin%=percent_of_real_memory
percent_of_real_memory = ((size of SGA / size of physical memory) *100) + 3
3.Set LOCK_SGA parameter to TRUE in the init.ora
##########################################################################################
一、设置后的系统状态:
分享到:
相关推荐
在Linux平台上,Oracle数据库在某些情况下需要使用`lock_sga`参数来确保SGA(System Global Area)的内存被锁定在物理内存中,避免频繁的页面交换提高性能。然而,Linux内核并不直接支持`lock_sga`。当设置`lock_sga...
4. **memlock**: 这是Linux的一个资源限制,用于限制一个用户可以锁定在物理内存中的内存数量,防止交换到磁盘。 下面是启用Oracle大页内存的步骤: 1. **计算大页内存大小**: 使用提供的bash脚本`hugepages_...
由于 Windows 2003 的 32 位 CPU 在系统中给系统用 2G 给应用程序使用, Oracle 的 SGA 内存使用不能超过 1.7G,因此需要进行一些设置来扩大 SGA 内存使用。 首先,需要修改 boot.ini 文件,添加 /3GB /PAE 开关,...
- **LOCK_SGA**:此参数用于控制SGA是否被锁定在物理内存中。当设置为TRUE时,SGA的所有页面都会被锁定,防止被操作系统置换到虚拟内存中,从而避免PageIn/Out的发生。 #### 使用ASMM自动调整SGA 为了更好地管理...
需要注意的是,某些系统可能不支持内存锁定。 #### 使用indirect data buffers - **use_indirect_data_buffers**: 在32位平台上,该参数允许SGA使用更多的物理内存,从而突破2GB的限制。在64位平台上,该参数被...
3. 在“域安全策略”>“本地安全策略”>“用户权限分配”>“锁定内存页”中,添加运行Oracle数据库的用户,赋予其锁定内存的权限。 4. 重启计算机。 **方法二** 是通过PAE(Physical Address Extension)选项来实现:...
- 在使用共享服务器模式时存储在SGA中。 - 在使用专用服务器模式时存储在PGA中。 ##### 4. 软件代码区 **定义**:这部分内存用于存储正在运行或可能要运行的代码。 **特点**: - 通常与用户程序分开存储。 - 可能...
大页机制解决了这个问题,它将页面大小扩大至2MB,显著减少了页表项,提高了CPU缓存命中率,同时大页内存锁定在物理内存,防止交换带来的性能损失。然而,大页的预分配和不可灵活调整等缺点也需要权衡。 **三、大页...
SGA 的大小受到初始化参数SGA_MAX_SIZE的限制,通常应尽量将其置于物理内存中以提高性能,可以通过设置LOCK_SGA为true来锁定SGA只使用物理内存。我们可以通过show sga命令查看SGA的当前分配情况。 2. 实例的进程...
Oracle TimesTen In-Memory Database是一个完全驻留在物理内存中的数据库,它通过标准SQL接口提供快速的数据访问。这种设计使得应用程序可以直接与数据交互,避免了传统数据库通过IPC连接带来的延迟。此外,TimesTen...
1. **锁定SGA**:通过锁定SGA,确保SGA中的数据结构(包括latch/mutex等)不会被交换到磁盘,从而避免了由于swapping导致的性能下降。 2. **使用Large Page(Huge Page)技术**:在SGA较大的情况下,采用Large Page...
在Oracle数据库中,内存主要分为两大区域:System Global Area (SGA) 和 Program Global Area (PGA)。 SGA是Oracle数据库中的一块共享内存区域,用于存储数据库的各种全局信息,包括数据缓冲区缓存、重做日志缓冲区...
在UNIX系统上,由于Oracle运行在多进程中,因此需要设置共享内存段;而在Windows系统中,Oracle作为一个单进程多线程的应用,无需额外设置共享内存。 1. SGA的组成部分: - Fixed Size:这部分内存是固定的,用于...
在Linux系统中,HugePages是一种优化内存管理的技术,它允许操作系统分配连续的大块物理内存,从而减少或消除页面映射表(页表)的开销,提高内存访问效率,尤其是对于那些需要大量连续内存的高性能应用,如数据库...
- 计算锁定内存的大小,确保实际物理内存大于等于锁定内存,且锁定内存大于等于 `HugePages_Total * Hugepagesize`。 - 修改 `/etc/security/limits.conf` 文件,增加或更新以下内容: ```conf oraclesoft ...
在Oracle中,内存主要分为SGA和PGA(Program Global Area)两部分。SGA负责存储共享数据,如数据缓冲区、重做日志缓冲区和SQL解析区。PGA则主要服务于单个会话,包含用户会话中的私有数据和执行计划。 对于SQL解析...
其主要聚焦于Oracle8i版本中的等待(Waits)、闩锁(Latches)、锁定(Locks)以及内存管理(Memory Management)等核心主题。这些主题对于理解Oracle数据库的工作原理、性能调优以及问题诊断等方面至关重要。 #### 关键...
在设置SGA时,应确保其总和(包括数据缓冲区、共享池、日志缓冲区、JAVA池和大池)不超过可用内存的55%-58%。PGA包含排序区(sort_area_size)和哈希区(hash_area_size),这两个参数在每个会话中单独分配,非MTS...
- **LCKn(锁进程)**:在并行服务器环境中提供锁定机制。 - **Dnnn(调度进程)**:在共享服务器配置中使用,用于管理用户会话的调度。 - **SNPN(快照进程)**:用于处理数据库快照的自动刷新。 #### 三、系统...