Ubuntu中优化Oracle内存使用的方法与技巧
Ubuntu系统下Oracle内存优化的实际操作指南一 基线评估与总体策略明确物理内存与用途:用 free -h 查看可用内存,保留**20%–30%**给操作系统、监控、网络与突发负载,避免数据库把内存吃满。内存分配比例(经验值):SGA 30%–70%、PGA 5%–25%,总和不宜超过物理内存
Ubuntu系统下Oracle内存优化的实际操作指南

一 基线评估与总体策略
- 明确物理内存与用途:用 free -h 查看可用内存,保留**20%–30%**给操作系统、监控、网络与突发负载,避免数据库把内存吃满。
- 内存分配比例(经验值):SGA 30%–70%、PGA 5%–25%,总和不宜超过物理内存的80%,以降低 swap 与抖动风险。
- 选择内存管理模式:
- AMM(Automatic Memory Management):用 memory_target 统一管理 SGA+PGA,适合新手与稳态业务。
- ASMM(Automatic Shared Memory Management):设置 sga_target 与 pga_aggregate_target,SGA 内部自动调优,适合需要一定可控性的场景。
- 手动模式:精细到组件,适合复杂或特殊负载。
- 监控工具:系统侧用 free -h、top/htop、vmstat 1 10;数据库侧用 V$SGAINFO、V$PGA_AGGREGATE_TARGET_ADVICE、V$MEMORY_DYNAMIC_COMPONENTS,必要时结合 AWR/ASH 报告定位瓶颈。
二 操作系统层面优化
- 共享内存与信号量(Oracle 必需):编辑 /etc/sysctl.conf,示例(按实际内存调整):
- kernel.shmall = 2097152(共享内存总页数,4KB/页)
- kernel.shmmax = 17179869184(单个共享内存段上限,约 16GB)
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
执行 sudo sysctl -p 生效。
- 降低换页倾向:设置 vm.swappiness=10(范围 0–100,值越小越少用 swap;某些场景会用 0,但数据库更推荐 10 以保留应急弹性)。
- 文件句柄与进程数:在 /etc/security/limits.conf 增加
- oracle soft/hard nofile 1024/65536
- oracle soft/hard nproc 2047/16384
- 异步 I/O:设置 vm.aio-max-nr=1048576,提升高并发 I/O 场景性能。
- 透明大页(THP):建议关闭以避免内存碎片与性能抖动:
- echo “never” | sudo tee /sys/kernel/mm/transparent_hugepage/enabled
- echo “never” | sudo tee /sys/kernel/mm/transparent_hugepage/defrag
- 虚拟内存映射上限:提高 vm.max_map_count=262144,降低出现 ORA-4030 的风险。
- 大页内存(HugePages,推荐用于大 SGA):
- 检查:grep -E ‘hugepages|Hugepagesize’ /proc/meminfo
- 计算:HugePages ≈ SGA 大小 / HugePageSize(常见 HugePageSize 为 2MB)
- 配置:在 /etc/sysctl.conf 设置 vm.nr_hugepages=目标页数,并配置 vm.hugetlb_shm_group 为 Oracle 用户组 GID,重启数据库后生效。
三、Oracle数据库内存参数的配置要点
- AMM(统一内存管理,推荐):
- ALTER SYSTEM SET memory_target=16G SCOPE=SPFILE;
- ALTER SYSTEM SET memory_max_target=32G SCOPE=SPFILE;
- ALTER SYSTEM SET sga_target=0 SCOPE=SPFILE;
- ALTER SYSTEM SET pga_aggregate_target=0 SCOPE=SPFILE;
- 重启数据库生效。
- ASMM(SGA 自动、PGA 手动):
- ALTER SYSTEM SET sga_target=8G SCOPE=SPFILE;
- ALTER SYSTEM SET sga_max_size=8G SCOPE=SPFILE;
- ALTER SYSTEM SET pga_aggregate_target=2G SCOPE=SPFILE;
- 可选:为关键组件设初值(ASMM 可自调)如 shared_pool_size、db_cache_size。
- 手动模式(精细控制):
- ALTER SYSTEM SET db_cache_size=4G SCOPE=SPFILE;
- ALTER SYSTEM SET shared_pool_size=2G SCOPE=SPFILE;
- ALTER SYSTEM SET large_pool_size=200M SCOPE=SPFILE;
- ALTER SYSTEM SET ja va_pool_size=200M SCOPE=SPFILE;
- PGA 子项如 sort_area_size、hash_area_size 视需要设置。
- 组件占比建议:db_cache_size 50%–60%、shared_pool_size 15%–30%、log_buffer 16M–64M。
四 验证与监控
- 参数与状态:
- SHOW PARAMETER target / sga_target / pga_aggregate_target
- SELECT * FROM V$SGAINFO;
- SELECT * FROM V$PGA_AGGREGATE_TARGET_ADVICE;
- SELECT * FROM V$MEMORY_DYNAMIC_COMPONENTS;
- 系统侧:
- free -h、top/htop、vmstat 1 10(关注 si/so 是否频繁)
- 工作负载分析:生成 AWR/ASH 报告,识别共享池命中率、缓冲区命中率、PGA 排序/哈希瓶颈。
五 注意事项与常见坑
- 避免过度分配:SGA+PGA ≤ 物理内存 80%;AMM/ASMM 上限也要受此约束。
- 大页与 AMM 的取舍:启用 HugePages 时,部分 Oracle 版本与平台组合下建议关闭 AMM(memory_target),优先使用 ASMM 以获得更稳定的大页收益;变更前务必在测试环境验证。
- THP 与 swap:关闭 THP、合理设置 vm.swappiness(数据库更推荐 10),减少抖动与性能劣化。
- 变更流程:参数修改写入 SPFILE 后需重启;先备份 SPFILE 与当前参数,按“小步调整、持续观测”的节奏推进。
- SQL 与应用层优化:使用绑定变量降低硬解析,减少共享池压力;优化执行计划、索引与访问路径,降低 PGA 排序/哈希开销。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
VMware安装Ubuntu完整教程:创建虚拟机与启动验证
本教程详细演示如何在VMware中创建Ubuntu虚拟机,涵盖ISO挂载、硬件配置、安装向导及启动验证。通过清晰的步骤与验证命令,帮助新手快速搭建可用的Linux学习环境。
Win10专业版U盘安装教程:制作启动盘与完整安装步骤
本文提供Win10专业版U盘安装完整流程:准备8GB以上U盘与官方镜像,制作启动盘并核对盘符;通过F12 F11 Esc等快捷键或BIOS设置U盘为第一启动项;安装时选择专业版并谨慎分区;完成后在“设置—系统—关于”验证版本与激活状态。操作前务必备份数据。
Windows10系统字体太小怎么调大
Windows10系统字体太小怎么调大?只需两步:首先打开设置中的显示选项,将缩放比例调整为125%或150%;随后运行ClearType文本调谐器优化字体清晰度。此方法适用于高分屏及普通屏幕,无需修改注册表即可解决界面拥挤问题。
Win10磁盘占用100%基础排查:从监控到清理的完整步骤
Windows 10系统出现磁盘占用100%会导致电脑卡顿、程序响应缓慢。本文提供基础排查方案:首先通过任务管理器确认是否为磁盘高负载,随后进入系统存储页面分析C盘占用类别,最后针对性清理临时文件。遵循此流程可有效缓解磁盘压力,避免盲目重装系统。
Windows10系统怎么显示此电脑和控制面板
Windows10默认可能不显示桌面图标,导致找不到“此电脑”和“控制面板”。只需进入个性化设置,在“桌面图标设置”中勾选对应选项即可恢复。本文提供详细图文步骤,帮助快速找回系统入口。
- 热门数据榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2026-09-01 16:50
2026-09-01 16:50
2026-08-27 15:46
2026-08-27 15:45
2026-08-27 15:45
2026-08-27 15:45
2026-08-27 15:44
2026-08-27 15:44
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

