文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle数据库查看与修改内存配置的方法

2023-11-22 10:15

关注

Oracle内存管理模式

Oracle数据库的内存管理模式从自动管理化程度由高到低依次可以分为:

在自动共享内存管理模式下,还可以手动为SGA中的某些重要组件指定最小的内存分配值,例如Shared Pool和Buffer Cache。

查看Oracle内存分配

检查各内存参数的TARGET配置:

SQL> show parameter target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
memory_max_target                    big integer 0
memory_target                        big integer 0
pga_aggregate_target                 big integer 1561M
sga_target                           big integer 4688M

其中,memory_targetmemory_max_target都为0,并且sga_targetpga_aggregate_target不为0,表示当前数据库使用的是自动共享内存管理模式。

检查SGA和PGA相关参数的配置:

SQL> show parameter sga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_max_size                         big integer 4688M
sga_min_size                         big integer 0
sga_target                           big integer 4688M

SQL> show parameter pga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_limit                  big integer 3122M
pga_aggregate_target                 big integer 1561M

查看SGA中各组件的内存使用情况:

SQL> select * from v$sgainfo;

NAME                                  BYTES RESIZEABLE     CON_ID
-------------------------------- ---------- ---------- ----------
Fixed SGA Size                      8906552 No                  0
Redo Buffers                        7868416 No                  0
Buffer Cache Size                3992977408 Yes                 0
In-Memory Area Size                       0 No                  0
Shared Pool Size                  872415232 Yes                 0
Large Pool Size                    33554432 Yes                 0
Java Pool Size                            0 Yes                 0
Streams Pool Size                         0 Yes                 0
Shared IO Pool Size               134217728 Yes                 0
Data Transfer Cache Size                  0 Yes                 0
Granule Size                       16777216 No                  0

NAME                                  BYTES RESIZEABLE     CON_ID
-------------------------------- ---------- ---------- ----------
Maximum SGA Size                 4915722040 No                  0
Startup overhead in Shared Pool   405891224 No                  0
Free SGA Memory Available                 0                     0

14 rows selected.

其中,Buffer Cache SizeShared Pool Size是需要重点关注的内容。

修改Oracle内存分配

如果我们升级了服务器物理内存配置,就需要对Oracle的内存参数进行修改。

在自动共享内存管理模式下,一般按照如下原则配置内存:

修改数据库内存配置:

--备份参数文件
create pfile='/home/oracle/pfile.ora' from spfile;

--禁用自动内存管理
alter system set memory_target=0M scope=spfile;

--设置SGA_TARGET
alter system set sga_max_size=9G scope=spfile;
alter system set sga_target=9G scope=spfile;

--设置Buffer cache、共享池、Java池的最小值
alter system set db_cache_size=2G scope=spfile;
alter system set shared_pool_size=1G scope=spfile;
alter system set java_pool_size=128m scope=spfile;

--设置PGA_AGGREGATE_TARGET
alter system set pga_aggregate_target=1G scope=spfile;

然后重启数据库即可生效。

SQL> show parameter sga_target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sga_target                           big integer 9G

SQL> show parameter pga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_limit                  big integer 3000M
pga_aggregate_target                 big integer 1G

SQL> show parameter db_cache_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_cache_size                        big integer 2G

SQL> show parameter shared_pool_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
shared_pool_size                     big integer 1G

SQL> show parameter java_pool_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
java_pool_size                       big integer 128M

需要注意的是,服务器物理内存变化通常还涉及内核参数kernel.shmallkernel.shmmax的调优。如果数据库使用了大页,还需要调优操作系统的大页配置。

# 查看是否开启大页
SQL> show parameter use_large_pages

# 查看操作系统大页配置
cat /proc/meminfo | grep HugePage
cat /proc/meminfo | grep Hugepagesize

总结 

到此这篇关于Oracle数据库查看与修改内存配置的文章就介绍到这了,更多相关Oracle查看修改内存配置内容请搜索编程客栈(www.cppcns.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.cppcns.com)!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯