ipcs -sa查出的共享内存片大小为什么大于sga_target?
# ipcs -sa------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 32768 gdm 600 393216 2 dest
0x7f231aac 360449 oracle 640 29360128015
SQL> startup
ORACLE instance started.
Total System Global Area289406976 bytes
Fixed Size 1219016 bytes
Variable Size 92276280 bytes
Database Buffers 192937984 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 276M
sga_target big integer 276M
shutdown
修改内核参数,
# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.shmall = 2097152
kernel.shmmax = 104857600 (之前为kernel.shmmax = 2147483648)
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
startup
# ipcs -sa
可以看到内存分片
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x00000000 32768 gdm 600 393216 2 dest
0x00000000 393217 oracle 640 4194304 19
0x00000000 425986 oracle 640 10485760019
0x00000000 458755 oracle 640 10485760019
0x7f231aac 491524 oracle 640 79691776 19
------ Semaphore Arrays --------
key semid owner perms nsems
0xb94bd744 753664 oracle 640 154
------ Message Queues --------
key msqid owner perms used-bytes messages
104857600bytes*2+79691776bytes=289406976bytes,这个大小正好等于SGA的大小276M
1、请问多出来的共享内存段4194304是什么呢?
2、shmall这个参数应该如何设置呢?我看网上很多资料说这个参数是shmmax(单个共享内存段的最大值)的大小除以共享内存页大小(linux下共享内存页为4K),如果是shmmax=16G,那么shmall=16*1024*1024/4=4194304,这样设置合理吗? 这么大的共享内存段总得有一个内存管理数据结构吧,例如分页地址映像等内存结构。
你的shmall的计算方式是对的,虽然Oracle为SGA分配了一个大的内存段,看起来是连续的,其实这也是通过地址映像实现的连续,真实的内存段是通过一个个4K的空间组成的。 和我遇到的问题类似,学习了 感谢老师,这下终于理解透彻了! {:soso_e182:},学习了!!! 顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
页:
[1]