ORACLE LINUX7系统安装ORACLE 11G

一.创建目录,挂载本地镜像:

mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
mv /etc/yum.repos.d /etc/yum.repos.d.bak
mkdir /etc/yum.repos.d
cd /etc/yum.repos.d

vi public-yum-ol7.repo

[CDROM]
name=isofile
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
gpgkey=file:///mnt/RPM-GPG-KEY-oracle

yum install -y vim

yum install compat-libstdc++-33* elfutils-libelf-devel-* gcc-4.* gcc-c++-4.* libaio-0.* libaio-devel-0.* libgcc-4.* sysstat-7.* unixODBC-2.* unixODBC-devel-2.* pdksh* -y

yum install gcc gcc-c++ glibc* glibc-devel* libgcc* libstdc++* libstdc++-devel* make sysstat -y
yum install -y compat-libstdc*
yum install -y unixODBC*
yum install -y compat-libcap*
yum install -y libcap*
yum install -y libaio-devel
yum install -y xdpyinfo
yum install -y perl-Env
yum install -y smartmontools
yum install -y elfutils-libelf-devel
yum install -y unzip

rpm -ivh pdksh-5.2.14-37.el5.x86_64.rpm

确保所有依赖包都已经安装完成后继续

二.修改主机名,创建用户组和用户:

vim /etc/hostname
groupadd oinstall              #创建用户组oinstall groupadd dba                 #创建用户组dba useradd
-g oinstall -G dba oracle    #创建oracle用户,并加入到oinstall和dba用户组 groups oracle               #查询用户组是否授权成功 passwd oracle               #设置oracle用户密码
id oracle                  #查看新建的oracle用户

 

三.配置系统内核参数:

vim /etc/sysctl.conf

net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
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

立即生效:sysctl -p

各参数详解:

 

1. kernel.shmmax :

 

是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的 SGA , 设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及 ServerProcess 创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低 ( 在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响 ) ,但是其他时候都不会有影响。

官方建议值:

32 位 linux 系统:可取最大值为 4GB ( 4294967296bytes ) -1byte ,即 4294967295 。建议值为多于内存的一半,所以如果是 32 为系统,一般可取值为 4294967295 。 32 位系统对 SGA 大小有限制,所以 SGA 肯定可以包含在单个共享内存段中。

64 位 linux 系统:可取的最大值为物理内存值 -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 (页),

当内存为 12G 时, kernel.shmall = 3145728

当内存为 16G 时, kernel.shmall = 4194304

当内次为 32G 时, kernel.shmall = 8388608

当内存为 64G 时, kernel.shmall = 16777216

当内存为 128G 时, kernel.shmall = 33554432

kernel.shmmni

该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。

fs.file-max

该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

fs.aio-max-nr

      此参数限制并发未完成的请求,应该设置避免I/O子系统故障。

kernel.sem

kernel.sem = 250 32000 100 128为例:

       250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。

       32000是参数semmns的值,表示系统内可允许的信号量最大数目。

       100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。

       128是参数semmni的值,表示系统信号量集合总数。

net.ipv4.ip_local_port_range

    表示应用程序可使用的IPv4端口范围。

net.core.rmem_default

表示套接字接收缓冲区大小的缺省值。

net.core.rmem_max

表示套接字接收缓冲区大小的最大值。

net.core.wmem_default

表示套接字发送缓冲区大小的缺省值。

net.core.wmem_max

表示套接字发送缓冲区大小的最大值。

四.修改用户限制:

vim /etc/security/limits.conf
  oracle soft nproc 2047
  oracle hard nproc 16384
  oracle soft nofile 1024
  oracle hard nofile 65536

五.关闭selinux

vim /etc/sysconfig/selinux
  SELINUX=enforcing
修改为   SELINUX
=disabled

六.创建安装目录及赋权:

mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
mkdir -p /u01/app/database
chown -R oracle:oinstall /u01/app/
chmod -R 775 /u01

mkdir -p /oradata1/controlfile
mkdir -p /oradata1/onlinelog
mkdir -p /oradata1/datafile

chown -R oracle:oinstall /oradata1/

七.配置oracle环境变量

vim /home/oracle/.bash_profile

umask 022
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_UNQNAME=$ORACLE_SID

source /home/oracle/.bash_profile

 

十.上传安装包解压安装:

chown -R oracle:oinstall /u01/app
unzip p13390677_112040_Linux-x86-64_1of7.zip unzip p13390677_112040_Linux-x86-64_2of7.zip export DISPLAY=IP:0.0 ./runInstaller

 

取消勾选并点击“Next”

 

选择“Install database software only”并点击“Next”

cd /u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/

cp ins_emagent.mk ins_emagent.mk.bak

vim ins_emagent.mk

(MK_EMAGENT_NMECTL)

 $(MK_EMAGENT_NMECTL) -lnnz11

posted @ 2020-11-10 10:03  玄澈  阅读(491)  评论(0编辑  收藏  举报