为了确保数据库运行稳定,Oracle 11g针对Linux内核参数、进程会话限制提出了一些要求,其中一部分设置可以在安装过程中自动检测并修复,但并不一定很完整,所以最好的做法是根据安装文档提前进行配置
内核参数调整体现在/etc/sysctl.conf文件中,主要包括对内存调度、端口范围、打开文件数、I/O请求等相关的一些设置,相关数值不可低于安装要求。修改完毕后通过执行“sysctl -p”命令使新配置立即生效
1 2 3 4 5 6 7 8 9 10 11
kernel.shmmax = 536870912 kernel.shmall = 2097152 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.aio-max-nr = 1048576 fs.file-max = 6815744 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586
相关内核参数解释:
kernel.shmmax:定义单个共享内存段的最大值,默认值,大于此值即可
kernel.shmall:控制共享内存页数,默认值,大于此值即可
kernel.shmmni:共享内存段的最大数量
kernel.sem:semaphore为每个进程通讯需要的信号灯或者IPC标志
fs.aio-max-nr:异步IO请求数目
fs.file-max:系统所有进程一共可以打开的文件数量
net.ipv4.ip_local_port_range:向外连接的端口范围
net.core.rmem_default:内核套接字接受缓存区默认的大小
net.core.rmem_max:内核套接字接受缓存区的最大大小
net.core.wmem_default:内核套接字发送缓存区默认的大小
net.core.wmem_max:内核套接字发送缓存区的最大大小
最后sysctl -p重新加载配置文件
4.Oracle用户环境要求
Oracle 11g需要固定的运行用户oracle、安装组oinstall、管理组dba,这些账号应提前建立好。用来存放Oracle程序及数据库文件的基本目录(如/opt/oracle)也应提前创建好
1 2 3 4 5 6 7 8 9 10 11
groupadd -g 500 oinstall //创建安装组 groupadd -g 501 dba //创建管理组 useradd -g oinstall -G dba oracle //创建运行用户 passwd oracle //设置用户密码 mkdir /opt/oracle //建立基本目录 chown -R oracle:oinstall /opt/oracle chmod -R 775 /opt/oracle mkdir /opt/tmp/ //创建安装时使用的临时文件夹 chmod +wr /opt/tmp
Oracle 11g的安装任务应以运行用户oracle的身份执行,需适当调整Oracle用户的环境配置以便满足要求
1 2 3 4 5 6 7 8 9 10 11 12
vim /home/oracle/.bash_profile ... umask 022 //文件权限掩码 export ORACLE_BASE=/opt/oracle/ //定义基本目录 export ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1/ //定义家目录 export ORACLE_SID=orcl //定义数据库实例名称 export LANG=en_US.UTF-8 //确定使用语言环境 export NLS_LANG="AMERICAN_AMERICA".ZHS16GBK //Oracle消息利用的语言 export PATH=$ORACLE_HOME/bin:$PATH export DISPLAY=:0.0 //告知默认的显示端口号
5.Oracle用户资源限制要求