kernel.shmmax:是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的 SGA ,可取的最大值为物理内存值 -1byte ,建议值为多于物理内存的一半,一般取值大于 SGA_MAX_SIZE 即可,可以取物理内存 -1byte 。
内存为 12G 时,该值为 12*1024*1024*1024-1 = 12884901887
内存为 16G 时,该值为 16*1024*1024*1024-1 = 17179869183
内存为 32G 时,该值为 32*1024*1024*1024-1 = 34359738367
内存为 64G 时,该值为 64*1024*1024*1024-1 = 68719476735
内存为 128G 时,该值为 128*1024*1024*1024-1 = 137438953471
2. kernel.shmall :
该参数控制可以使用的共享内存的总页数。 Linux 共享内存页大小为 4KB, 共享内存段的大小都是共享内存页大小的整数倍。
一个共享内存段的最大大小是 16G ,那么需要共享内存页数是 16GB/4KB==4194304 (页)
3 如果像设置大页
vm.nr_hugepages只能使用ASMM。MOS 401749.1提供的hugepages_settings.sh脚本,直接可以得到建议值。
这个脚本modb也有
4 假设用户数据库为1000G,OLTP类型
SUSAUX、SYSTEM、TEMP、UNDOTBS、USERS表空间初始设置应为多大
Redo日志组建几个,每个大小设置多少
sysaux,system默认自动增长即可,temp和undotbs按照实际情况确认,一般temp至少8g或者32g,根据实际应用情况而定,
UNDOTBS可以根据undo使用情况而定。初期可以设置8G自动增长,设置最大值;后期根据flashback和retention等综合而定。
redo如果单机,建议修改大小为512m,默认大小很小,后期根据db的切换频率做调整,组数也可以适当增加