修改oracle内存占用

进入系统,

   

进入系统,

    # su oracle

    $cd $ORACLE_HOME

    $./sqlplus /nolog

    >connect / as sysdba;

    >show parameter sga; (查看内存占用情况)

      NAME                                   TYPE          VALUE
   ------------------------------------ ----------- -------------
   lock_sga                       boolean       FALSE
   pre_page_sga                   boolean       FALSE

   sga_max_size                   big integer 12000M
   sga_max_size                   big integer 12000M

  >alter system set sga_max_size=10000m scope=spfile;
  >alter system set sga_target=10000m scope=spfile;

  然后重启数据库,再show parameter sga就OK了。

如何使用oracle内存指导

  •  

oracle内存指导是oracle提供的一个数据库内存管理服务。只有足够的内存才能体启用自动内存管理时, 数据库将会自动设置内存的最佳分配方式。将不时更改内存分配以适应工作量的变化。

工具

  • oracle11g

方法/步骤

  1. 1

    打开IE输入控制台网址(https://IP:1158/em/),用具有DBA权限的用户登陆oracle控制台

  2. 2

    登陆控制台后点击服务器标签下的内存指导进入内存指导窗口

  3. 3

    自动内存管理 :单击启用按钮可转到“启用自动内存管理”页,在此页中可以使数据库自动设置系统全局区 (SGA) 和程序全局区 (PGA) 之间内存的最佳分配方式。

    内存总大小:此值是启用“自动内存管理”的情况下为“最大内存大小”字段指定的值。这种情况下将显示“禁用”按钮。

    最大内存大小: MEMORY_MAX_TARGET 的此值是 MEMORY_TARGET 可以设置的最大值。最大内存大小不能小于最大 SGA 大小。如果需要修改此值,则需要退回此实例。

  4. 4

    自动共享内存管理: 单击启用按钮可转到“启用自动共享内存管理”页,在此页中可以使数据库自动设置各 SGA 组件上内存的最佳分配方式。 如果禁用“自动内存管理”并启用“自动共享内存管理”,则“禁用”按钮可用。共享池:包含库高速缓存、字典高速缓存、并行执行消息的缓冲区和控制结构。初始化参数 SHARED_POOL_SIZE 可以确定共享池的总大小。此参数的最小值在 32 位平台上为 44MB,在 64 位平台上为 88MB。增加此参数的值将增加为共享池保留的内存量。

    缓冲区高速缓存:存储从数据文件中读取的数据块的副本。同时连接到实例上的所有用户进程共享对数据库缓冲区高速缓存的访问。

    大型池:为共享服务器、Oracle 备份和还原操作、I/O 服务器进程和并行执行消息缓冲区的会话内存提供大内存分配的可选内存区。

    Java 池:指定 Java 池的大小,Java 内存管理器在运行时从该 Java 池分配大多数 Java 状态。此内存中包括 Java 方法和类定义的共享内存中表示法以及调用结束时移植到 Java 会话空间的 Java 对象。    

    END
 
经验内容仅供参考,如果您需解决具体问题 建议您详细咨询相关领域专业人士
原文地址:https://www.cnblogs.com/endv/p/4111719.html