阅读量:1
在Ubuntu上配置Oracle资源限制,需分别调整系统内核参数和Oracle用户资源限制,具体步骤如下:
一、系统内核参数配置
编辑 /etc/sysctl.conf 文件,添加或修改以下参数(根据系统内存调整数值):
# 内存相关参数
kernel.shmall = 2097152
kernel.shmmax = 2147483648 # 最大共享内存(建议设置为物理内存的50%-80%)
kernel.shmmni = 4096
fs.file-max = 65536 # 最大文件描述符数
net.ipv4.ip_local_port_range = 9000 65500 # 可用端口范围
应用配置:
sudo sysctl -p
二、Oracle用户资源限制
编辑 /etc/security/limits.conf 文件,为Oracle用户(如oracle)添加以下限制:
oracle soft nproc 2047 # 软限制:最大进程数
oracle hard nproc 16384 # 硬限制:最大进程数
oracle soft nofile 1024 # 软限制:最大文件描述符数
oracle hard nofile 65536 # 硬限制:最大文件描述符数
oracle soft stack 10240 # 软限制:栈大小(单位:KB)
确保PAM模块生效,在 /etc/pam.d/login 和 /etc/pam.d/sshd 中添加:
session required pam_limits.so
三、Oracle实例内存参数配置
通过SQL命令或SPFILE配置内存参数(以SPFILE为例):
-- 自动内存管理(AMM)
ALTER SYSTEM SET memory_target=8G SCOPE=SPFILE;
ALTER SYSTEM SET memory_max_target=16G SCOPE=SPFILE;
-- 或手动配置SGA/PGA
ALTER SYSTEM SET sga_target=4G SCOPE=SPFILE;
ALTER SYSTEM SET pga_aggregate_target=2G SCOPE=SPFILE;
重启数据库使配置生效:
sqlplus / as sysdba
SHUTDOWN IMMEDIATE;
STARTUP;
四、验证配置
- 检查内核参数:
sysctl -a | grep shm sysctl -a | grep file-max - 检查用户限制:
su - oracle ulimit -n # 查看文件描述符限制 ulimit -u # 查看进程数限制 - 监控内存使用:
SELECT * FROM v$sgainfo; -- 查看SGA使用情况 SELECT * FROM v$pga_aggregate_target_advice; -- 查看PGA使用情况
注意事项
- 生产环境建议根据实际负载调整参数,避免过度分配资源。
- 若使用Docker部署Oracle,可通过
--shm-size参数设置共享内存大小(如--shm-size=2g)。 - 配置前建议备份相关文件,并参考Oracle官方文档验证参数兼容性。
以上就是关于“Ubuntu Oracle资源限制怎么配置”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm