Oracle体系结构之rac内存管理
一、内存管理第一层:
1、memory_target和memory_max_target开启自动内存管理。
rac1:
SQL> show parameter memory
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 0
memory_target big integer 0
shared_memory_address integer 0
rac2:
SQL> show parameter memory
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 0
memory_target big integer 0
shared_memory_address integer 0
二、内存管理第二层
1、sga_target、sga_max_size实现自动sga管理。
rac1:
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 2928M
sga_target big integer 2928M
rac2:
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 2928M
sga_target big integer 2928M
2、pga_aggregate_target实现自动pga管理。
rac1:
SQL> show parameter pga
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
pga_aggregate_target big integer 974M
rac2:
SQL> show parameter pga
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
pga_aggregate_target big integer 974M
三、内存管理第三层
rac1:
SQL> show parameter db_cache_size
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
db_cache_size big integer 0
SQL> show parameter log_buffer
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
log_buffer integer 16941056
SQL> show parameter shared_pool_size
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
shared_pool_size big integer 0
SQL> show parameter shared_pool_size
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
shared_pool_size big integer 0
SQL> show parameter large_pool
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
large_pool_size big integer 0
SQL> show parameter java_pool
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
java_pool_size big integer 0
SQL> show parameter stream
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
streams_pool_size big integer 0
rac2:
SQL> show parameter db_cache_size
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
db_cache_size big integer 0
SQL> show parameter log_buffer
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
log_buffer integer 16941056
SQL> show parameter shared_pool
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
shared_pool_reserved_size big integer 28521267
shared_pool_size big integer 0
SQL> show parameter large_pool
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
large_pool_size big integer 0
SQL> show parameter java_pool
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
java_pool_size big integer 0
SQL> show parameter streams
NAME TYPE VALUE
------------------------------------ --------------------------------- ------------------------------
streams_pool_size big integer 0
四、shm修改
如果想修改OS下oracle数据库内存大于OS内存一般以上,需要修改shm值(shm值默认为OS物理内存的50%),修改方法如下:
[root@server ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Dec 4 19:49:21 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=4225f161-f532-422f-82a4-1bc53ce8ea1a / ext4 defaults 1 1
UUID=07d3b54d-5537-4f84-bd9e-ceb3937312d0 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
[root@server ~]# vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Dec 4 19:49:21 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=4225f161-f532-422f-82a4-1bc53ce8ea1a / ext4 defaults 1 1
UUID=07d3b54d-5537-4f84-bd9e-ceb3937312d0 swap swap defaults 0 0
tmpfs /dev/shm,size=5g tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
重启服务器,或者杀掉占用shm内存的进程,重新挂在磁盘。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了