|
本帖最后由 lfree 于 2019-11-14 15:17 编辑
已经放在最前面,我以为没贴,重复了.
忘记贴了
# 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.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4194304
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 = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
--//kernel.shmall * kernel.shmmni = 4194304*4096 = 17179869184
--//17179869184/1024/1024/1024 = 16G
--//68719476736/1024/1024/1024 = 64
--//你前面提到2个实例1个8 ,1个6G,应该是这里不足了.要加大到4194304*2 = 8388608.或者设置更大一些.
--//另外的可能就是内存碎片,我有点乱猜,毕竟共享内存段需要很大一片内存,当然可以分成多段.你没有写出什么错误,应该是ora-27XXX的错误.
--//对于linux内存上许多概念还是不是很清晰,以后慢慢补充学习这方面内容.
--//我个人建议使用hugepages,现在的机器内存都很大.如果有缺点就是如果你分配hugepages,不使用就浪费了.
--//其实设置小了vm.nr_hugepages也没有什么问题.
--//use_large_pages支持auto参数.设置小了vm.nr_hugepages没关系.
SYS@book> alter system set use_large_pages=xxxxxxxxx scope=spfile ;
alter system set use_large_pages=xxxxxxxxx scope=spfile
*
ERROR at line 1:
ORA-00096: invalid value XXXXXXXXX for parameter use_large_pages, must be from among FALSE, ONLY, AUTO, TRUE
--//会启动oradism进程修改内核参数.参考链接 :http://blog.itpub.net/267265/viewspace-2135210/
--//这样的缺点是修改后不会返回给其它应用使用.你可以使用这样方式计算需要vm.nr_hugepages.
--//另外你也可以定义参数:vm.nr_overcommit_hugepages=XXXXXX.
--//这样vm.nr_hugepages定义小了,也没有关系.
--//参考链接:http://blog.itpub.net/267265/viewspace-2145481/
--//使用这个好处关闭数据库后,这部分内存可以返回给其它应用使用.
--//当然我也遇到1个问题,就是链接http://blog.itpub.net/267265/viewspace-2132921/
|
|