Oracle在Linux内核参数的修改
实例: kernel.core_uses_pid = 1kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 320
实例:
kernel.core_uses_pid = 1
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
ore_uses_pid可以控制产生的core文件的文件名中是否添加pid作为扩展,如果添加则文件内容为1,否则为0
服务器内存为4G的情况下
修改/etc/sysctl.conf文件 (ROOT账户)
kernel.shmmax = 2147483648
//公式:2G*1024*1024*1024=2147483648(字节)
//表示最大共享内存,,如果小的话可以按实际情况而定,一般为物理内存的一半,大一点也可以(单位:字节)
kernel.shmmni=4096
//shmmni 内核参数是共享内存段的最大数量(注意这个参数不是 shmmin,是
shmmni, shmmin 表示内存段最小大小 )。shmmni 缺省值 4096 ,一般肯定是够用了。
kernel.shmall=1048576
//kernel.shmall 参数是控制共享内存页数 。Linux 共享内存页大小为4KB, 共享内存段的大小都是共享内存页大小的整数倍。公式:4G*1024*1024/4K = 1048576(页) 查看内存页大小方法#getconf PAGESIZE
//kernel.shmall:表示可用共享内存的总量,单位是页,在32位系统上一页等于4kB,也就是4096字节。
kernel.sem=250 32000 100 128
//4个参数依次是SEMMSL:每个用户拥有信号量最大数,SEMMNS:系统信号量最大数,SEMOPM:每次semopm系统调用操作数,SEMMNI:系统辛苦量集数最大数。这4个参数为固定内容大小
fs.file-max=65536
//在linux下面如果报告:too many file opened,就需要增加系统允许打开的文件数。file-max固定大小65536
net.ipv4.ip_local_port_range=1024 65000
//ip_local_port_range表示端口的范围,为指定的内容
kernel.sem:表示设置的信号量,这4个参数内容大小固定。
net.core.rmem_default:表示接收套接字缓冲区大小的缺省值(以字节为单位)。
net.core.rmem_max :表示接收套接字缓冲区大小的最大值(以字节为单位)
net.core.wmem_default:表示发送套接字缓冲区大小的缺省值(以字节为单位)。
net.core.wmem_max:表示发送套接字缓冲区大小的最大值(以字节为单位)
以上步骤做完执行 /sbin/sysctl -p 使内核生效
验证参数(root账户执行):
#/sbin/sysctl -a | grep shm
#/sbin/sysctl -a | grep sem
#/sbin/sysctl -a | grep file-max
#/sbin/sysctl -a | grep ip_local_port_range
推荐阅读
-
Linux下关于keepalive的内核参数说明
-
Oracle中在pl/sql developer修改表的2种方法
-
在Linux 服务器下修改防火墙允许该端口远程访问的方法
-
在Linux下修改和重置root密码的方法(超简单)
-
Oracle VM VirtualBox 在linux系统下安装增强插件实现访问主机的共享文档方法
-
在Linux系统上安装Linux内核头文件的教程
-
在Linux操作系统中修改环境变量的方法
-
Oracle中在pl/sql developer修改表的2种方法
-
Linux下关于keepalive的内核参数说明
-
oracle数据库在onlne redo丢失的情况下,恢复时两个重要的参数