Oracle 单实例部署(11g)
操作系统环境:CentOS release 6.9 (Final)
数据库环境:Oracle 11.2.0.4
- 打底层包
--检查底层包
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \
compat-libstdc++-33 \
glibc \
ksh \
libaio \
libgcc \
libstdc++ \
make \
compat-libcap1 \
gcc \
gcc-c++ \
glibc-devel \
libaio-devel \
libstdc++-devel \
sysstat
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat xorg-x11-apps
- 修改内核参数
vi /etc/sysctl.conf
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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 = 1048576
--执行立即生效
/sbin/sysctl -p
kernel.shmmax:配置了最大的内存segment的大小 ------>这个设置的比SGA_MAX_SIZE大比较好
Kernel.shmall:共享内存总量,以页为单位。Linux 共享内存页大小为4KB, 共享内
存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需
要共享内存页数是 16GB/4KB=16777216KB/4KB=4194304 (页),也就是64Bit 系统下
16GB 物理内存,设置 kernel.shmall = 4194304 才符合要求(几乎是原来设置2097152
的两倍)。这时可以将shmmax 参数调整到 16G 了,同时可以修改SGA_MAX_SIZE 和
SGA_TARGET 为 12G(您想设置的SGA 最大大小,当然也可以是2G~14G 等,还要协调PGA
参数及OS 等其他内存使用,不能设置太满,比如16G)
fs.file-max:系统所有进程一共可以打开的文件数量 。同时一些程序可以通过setrlimit调用,设置每个进程的限制。如果得到大量使用完文件句柄的错误信息,是应该增加这个值
fs.aio-max-nr:同时可以拥有的的异步IO请求数目
- 创建oracle用户及组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle