Linux 安装 Oracle Database 11gR2

记录安装流程以备使用。

前言

公司安排出差给客户安装配置环境,由于是安装到服务器上,针对不同的服务器有不同的配置方式,请服务器提供商进行配置,或自行上网搜索相关服务器的配置项和方式。此次安装是客户先请服务器提供商进行配置后的基础上进行安装。故可以忽略。

由于是使用的 Oracle Database 11gR2 版本,所以选择使用 Oracle Linux 6+ 版本,以获取最佳的兼容性。具体安装方式与大部分的服务器版本的 Linux 基本相同。默认没有静默安装,所以需要安装桌面,后续有需要再对静默安装进行学习。

此次客户环境无外网连接,相应软件工具需要准备充分。

安装流程

  1. 安装至少要包含以下包,有可能更多。视安装 Linux 时选择的包的情况而定。缺包补包。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    binutils-2.20.51.0.2-5.11.el6 (x86_64)
    compat-libcap1-1.10-1 (x86_64)
    compat-libstdc++-33-3.2.3-69.el6 (x86_64)
    compat-libstdc++-33-3.2.3-69.el6.i686
    gcc-4.4.4-13.el6 (x86_64)
    gcc-c++-4.4.4-13.el6 (x86_64)
    glibc-2.12-1.7.el6 (i686)
    glibc-2.12-1.7.el6 (x86_64)
    glibc-devel-2.12-1.7.el6 (x86_64)
    glibc-devel-2.12-1.7.el6.i686
    ksh
    libgcc-4.4.4-13.el6 (i686)
    libgcc-4.4.4-13.el6 (x86_64)
    libstdc++-4.4.4-13.el6 (x86_64)
    libstdc++-4.4.4-13.el6.i686
    libstdc++-devel-4.4.4-13.el6 (x86_64)
    libstdc++-devel-4.4.4-13.el6.i686
    libaio-0.3.107-10.el6 (x86_64)
    libaio-0.3.107-10.el6.i686
    libaio-devel-0.3.107-10.el6 (x86_64)
    libaio-devel-0.3.107-10.el6.i686
    make-3.81-19.el6
    sysstat-9.0.4-11.el6 (x86_64)
  2. /etc/sysctl.conf中的内核参数 (checkInstallCondition.sh)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    echo "MinNum: semmsl.250 semmns.32000 semopm.100 semmni.128"
    /sbin/sysctl -a | grep sem

    echo "MinNum: shmmax:536870912 shmall.2097152 shmmni.4096 "
    /sbin/sysctl -a | grep shm

    echo "MinNum: file-max.6815744"
    /sbin/sysctl -a | grep file-max

    echo "MinNum: 9000 MaxNum: 65500"
    /sbin/sysctl -a | grep ip_local_port_range

    echo "MinNum: 262144"
    /sbin/sysctl -a | grep rmem_default

    echo "MinNum: 4194304"
    /sbin/sysctl -a | grep rmem_max

    echo "MinNum: 262144"
    /sbin/sysctl -a | grep wmem_default

    echo "MinNum: 1048576"
    /sbin/sysctl -a | grep wmem_max
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    vi /etc/sysctl.conf
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmall = 2097152
    kernel.shmmax = 536870912
    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

    应用修改的值: /sbin/sysctl -p
    检查修改的值: /sbin/sysctl -a
  3. /etc/security/limits.conf中软硬 shell 资源限制

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    vi /etc/security/limits.conf
    文件描述符的软硬限制:
    $ ulimit -Sn
    4096
    $ ulimit -Hn
    65536

    用户进程数的软硬限制:
    $ ulimit -Su
    2047
    $ ulimit -Hu
    16384

    堆载的软硬限制:
    $ ulimit -Ss
    10240
    $ ulimit -Hs
    32768
  4. 建立用户、用户组

    1
    2
    3
    4
    # /usr/sbin/groupadd oinstall
    # /usr/sbin/groupadd dba
    # /usr/sbin/useradd -g oinstall -G dba oracle or 如果用户存在 /usr/sbin/usermod -g oinstall -G dba oracle
    # passwd oracle
  5. 建立安装目录。mount_point是任意挂载点,可以是/app也可以是/oracle/app/home/oracle/app。建议是/oracle/app

    1
    2
    3
    # mkdir -p /mount_point/app/
    # chown -R oracle:oinstall /mount_point/app/
    # chmod -R 775 /mount_point/app/
  6. 设置环境变量

    1
    2
    3
    4
    5
    6
    7
    8
    9
    su -oracle
    $ export DISPLAY=local_host:0.0

    $ ORACLE_BASE=/mount_point/app/oracle
    $ ORACLE_SID=orcl
    $ export ORACLE_BASE ORACLE_SID

    $ unset ORACLE_HOME
    $ unset TNS_ADMIN
  7. 到此可开始安装

    1
    2
    3
    4
    5
    6
    7
    8
    su
    # mkdir /home/OraDB11g
    # cd /home/OraDB11g
    # unzip linux.x64_11gR2_database_1of2.zip
    # unzip linux.x64_11gR2_database_2of2.zip
    su -oracle
    $ cd /home/OraDB11g/database
    $ ./runInstaller
  8. 配置基础环境变量

    1
    2
    3
    4
    5
    6
    7
    8
    9
    su -oracle
    $ cd ~
    $ vi .bash_profile

    ORACLE_BASE=/mount_point/app/oracle
    ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
    ORACLE_SID=orcl
    export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

  9. 检查启动 OracleDatabase

    1
    2
    3
    4
    5
    6
    su -oracle
    $ sqlplus /nolog
    sqlplus> connect /as sysdba
    sqlplus> startup
    sqlplus> exit
    $ lsnrctl start

简化安装流程

  1. yum 配置

    • 本地安装光盘源 (无外网或节省下载时间)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    光盘 无自动挂载操作(安装 U 盘操作类似,直接使用 ISO 镜像可以不要前三步操作)
    # mkdir /mnt/cdrom
    # mount /dev/cdrom /mnt/cdrom
    # cp -r /mnt/cdrom ~/Oracle_Linux_Install.iso
    # unmount /mnt/cdrom
    # mount -o loop /mnt/cdrom ~/Oracle_Linux_Install.iso

    光盘 自动挂载操作(安装 U 盘操作类似,直接使用 ISO 镜像可以不要前三步操作)
    # cp -r /media/光盘名 ~/Oracle_Linux_Install.iso
    # mount -o loop /mnt/cdrom ~/Oracle_Linux_Install.iso
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    # vi /etc/yum.repos.d/
    # cp xxx.repo local.repo
    # vi local.repo
    [local]
    #注释信息
    name=local
    #yum 源的路径,支持三种协议:http、ftp、file,其中 file 表示本地文件,/iso 才是真实路径
    baseurl=file:///mnt/cdrom
    #1 表示启用,0 表示禁用
    enabled=1
    #指纹校验,为 0 表示不校验
    gpgcheck=0
    #校验参考的文件 gpgcheck 为 0 时,无需 gpgkey
    gpgkey=xxx
    • 网络源
    1
    2
    3
    4
    # cd /etc/yum.repos.d
    # wget http://public-yum.oracle.com/public-yum-ol6.repo
    # vi public-yum-ol6.repo
    enabled=0 -> enabled=1 ol6_latest、ol6_UEK_latest 都修改
  2. 安装 Oracle Databases 预设信息

    • 11gR2: oracle-rdbms-server-11gR2-preinstall
    • 12cR1: oracle-rdbms-server-12cR1-preinstall
    1
    # yum install oracle-rdbms-server-11gR2-preinstall

    yum 安装过程在 /var/log/oracle-rdbms-server-11gR2-preinstall/results/orakernel.log 文件中记录有关内核更改的消息,并在 /var/log/oracle-rdbms-server-11gR2-preinstall/backup 目录中备份当前系统设置。

    此包的安装过程中,会安装所有 11gR2 的依赖包,修改所有需要修改的参数,创建用户、用户组等安装先决条件。

  3. 到此即可满足安装条件,直接安装即可

    1
    2
    3
    4
    5
    6
    7
    8
    su
    # mkdir /home/OraDB11g
    # cd /home/OraDB11g
    # unzip linux.x64_11gR2_database_1of2.zip
    # unzip linux.x64_11gR2_database_2of2.zip
    su -oracle
    $ cd /home/OraDB11g/database
    $ ./runInstaller

参考资料