ORACLE 19c 静默安装过程

1,791 阅读5分钟

一、前言:数据库静默安装的背景

最近因为公司需要搬迁,然后在搬迁过程中原本的测试环境无法使用,所以需要把数据库中的数据进行迁移,但是在迁移之前需要部署ORACLE数据库同时又是无界面的Centos 7 的系统所以本次安装的过程为静默的安装。

<------------------------------------------------------------------------------------------------------------------------------------------------------------------------------>

二、环境配置

    1、修改系统标识为redhat-7

执行# vi /etc/redhat-release打开文件,注释掉# CentOSLinux  release

image.gif    2、配置yum源为192.168.24.203的yum源

      (1)备份repo文件

     mkdir repo.bak
     mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo.bak

       (2)配置yum源

      vi http.repo

       (3)编辑内容:

    [base]
    name="CentOS7 HTTP YUM"
    baseurl=http://192.168.24.204/centos/
    gpgcheck=0
    enabled=1  
    [updates]
    name="CentOS7 HTTP YUM"
    baseurl=http://192.168.24.204/centos
    gpgcheck=0
    enabled=1

image.gif

    执行yum clean all 和yum makecache

  3、关闭firewalld.service、selinux

        (1)关闭firewalld.service

    systemctl stop firewalld.service //关闭firewalld

    systemctl disable firewalld.service //关闭开机启动

image.gif

  4、关闭selinux

     sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config

     setenforce 0

      或vi /etc/selinux/config,修改SELINUX的值为disabled。然后reboot。

image.gif   5、依赖包安装

    yum install -y bc binutils compat-libcap1 compat-libstdc++ elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc librdmacm-devel libstdc++ libstdc++-devel libxcb make net-tools smartmontools sysstat compat* elfutils-libe* gcc* glibc* libaio* libgcc* libstdc* make* numactl-* sysstat* unixODBC*  binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel

  6、创建用户和用户组(oracle、oinstall、dba)

    groupadd oinstall //创建oinstall用户组
   
    groupadd dba //创建dba用户组                                      
    useradd -g oinstall -G dba oracle //创建oracle用户并加入到oinstall和dba用户组 

    passwd oracle //修改oracle用户的密码 这里统一oracle    

    passwd oracle //修改oracle用户的密码 这里统一oracle
   
    id oracle //查看oracle用户

image.gif

      有误则使用以下命令删除重新设置用户组:

    gpasswd -d oracle dba #从分组移除用户

    usermod -g oinstall oracle

    usermod -G dba oracle

  7、配置内核参数(以32CPU、128G为例子)

        vi /etc/sysctl.conf

    fs.aio-max-nr = 1048576

    fs.file-max = 6815744

    #内存kernel.shmall、kernel.shmmax

    kernel.shmall = 33554432

    kernel.shmmax = 123695058124

    kernel.shmmni = 4096

    kernel.sem = 250 32000 100 128

    net.ipv4.ip_local_port_range = 9000 65500

    net.ipv4.ipfrag_time = 60

    net.core.rmem_default = 262144

    net.core.rmem_max = 4194304
    
    net.core.wmem_default = 262144

    net.core.wmem_max = 1048576

    vm.dirty_background_ratio = 3

    vm.dirty_ratio = 20

    vm.dirty_expire_centisecs = 500

    vm.dirty_writeback_centisecs = 100

    vm.min_free_kbytes = 1048576

    vm.swappiness = 10

image.gif

  8、配置/etc/pam.d/login文件

     (1)vi /etc/pam.d/login

     (2)添加以下内容:

    session required /lib64/security/pam_limits.so

    session required pam_limits.so

image.gif

  9、配置limits.conf文件

     (1)vi /etc/security/limits.conf

     (2)在末尾添加以下内容

    oracle    soft    nproc   2047

    oracle    hard    nproc   16384

    oracle    soft    nofile  1024

    oracle    hard    nofile  65536

image.gif

  10、创建程序安装目录和数据库文件存放目录

          (1)ORACLE程序部署目录

    mkdir -p /oracle/app/oracle/product/19c/dbhome_1

    mkdir -p /oracle/etc

          (2)数据库存放目录

    mkdir /data

           (3)赋予权限

    chown -R oracle:oinstall /oracle/

    chown -R oracle:oinstall /data/

    chmod -R 777 /oracle/

    chmod -R 777 /data/

  11、配置用户环境变量

       (1)vi /home/oracle/.bash_profile

       (2)在末尾添加以下内容:

    export ORACLE_SID=actdb   #数据库database.rsp中的SID

    export ORACLE_BASE=/oracle/app/oracle                   #BASE目录

    export ORACLE_HOME=$ORACLE_BASE/product/19c/dbhome_1 #oracle安装包的目录

    export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH

    export TNS_ADMIN=$ORACLE_HOME/network/admin

    export 
    LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:/lib/usr/lib:/usr/local/lib

    export TEMP=/tmp

    export TMP=/tmp
    
    export LC_ALL=en_US.UTF-8

    export LANG=en_US.UTF-8

    export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

    set -o vi

    stty erase ^h

    if [ -t 0 ]; then

       stty intr ^C

    fi

    umask 022

image.gif

       (3)使用source /home/oracle/.base_profile使oracle的环境变量生效。

<------------------------------------------------------------------------------------------------------------------------------------------------------------------------------>

三、ORACLE 19c 静默安装

  1、上传ORACLE 19C 的安装包至/oracle/app/oracle/product/19c/dbhome_1目录下并解压。

       (1)切换至oracle用户

    su - oracle

       (2)解压安装包

    unzip LINUX.X64_193000_db_home.zip

  2、拷贝ORCALE程序安装和数据库创建的rsp响应文件。

       (1)把ORCALE程序安装文件拷贝至/orcale/etc/目录下

    cp /oracle/app/oracle/product/19c/dbhome_1/install/response/db_install.rsp /oracle/etc/

    cp /oracle/app/oracle/product/19c/dbhome_1/assistants/netca/netca.rsp /orcale/etc/

  3、修改db_install.rsp配置文件

       (1)vi /orcale/etc/db_install.rsp

       (2)修改一下内容:

    oracle.install.option=INSTALL_DB_SWONLY  #安装类型

    UNIX_GROUP_NAME=oinstall #安装组

    INVENTORY_LOCATION=/oracle/app/oraInventory #INVENTORY目录

    ORACLE_BASE=/oracle/app/oracle

    oracle.install.db.InstallEdition=EE  #ORCALE版本

    oracle.install.db.OSDBA_GROUP=dba  #dba用户组

    oracle.install.db.OSOPER_GROUP=dba     #dba用户组

    oracle.install.db.OSBACKUPDBA_GROUP=dba #dba用户组

    oracle.install.db.OSDGDBA_GROUP=dba #dba用户组

    oracle.install.db.OSKMDBA_GROUP=dba #dba用户组

    oracle.install.db.OSRACDBA_GROUP=dba #dba用户组

  4、安装ORCALE程序

     (1)切换用户

        su - orcale

     (2)切换目录

         cd /oracle/app/oracle/product/19c/dbhome_1

     (3)执行安装命令

    ./runInstaller -silent -responseFile /oracle/etc/db_install.rsp -ignorePrereq

安装成功后提示以下内容:

image.gif

   5、使用root用户执行以上所提示的脚本:

       (1)切换用户

    su -

       (2)执行脚本

    /orcale/app/oraInventory/orainstRoot.sh

    /orcale/app/oracle/product/11.2.0/db_1/root.sh

三、ORACLE 数据库静默创建并配置监听过程

  1、静默创建数据库

     (1)切换用户

    su - oracle

       (2)编辑响应文件

    vi /oracle/etc/database.rsp

        修改如下内容:

    gdbName=actdbn1    #用户变量中的SID

    sid=actdbn1     #用户变量中的SID

    databaseConfigType=SI

    createAsContainerDatabase=true #开启多个数据库

    numberOfPDBs=1     #这里设置为一个

    pdbName=crmdbtest #创建数据库的名称

    pdbAdminPassword=sjk@123 #数据库管理密码

    sysPassword=sjk@123    #数据库系统密码

    systemPassword=sjk@123 #数据库系统密码

    datafileJarLocation=/data   #数据库文件存放目录

    datafileDestination=/data/{DB_UNIQUE_NAME}/  #所创建的数据库按数据库名称来创建文件夹

    recoveryAreaDestination=/data/flash_recovery_area #创建文件夹

       (3)执行命令静默建库

    dbca  -createDatabase -silent -responseFile /oracle/etc/dbca.rsp

    dbca.rsp:上传这个文件,使用这个文件修改数据库名称和SID即可

       (4)输出结果:

image.gif

       (5)查看进程:

    ps -ef | grep ora_ | grep -v grep

image.gif

       (6)登录ORACLE数据库

    sqlplus / as sysdba

       (7)激活数据库

    alter system register;

image.gif

       (8)查看目前所在的数据库。

    show parameter service;

  2、配置监听过程

     (1)切换用户

    su - orcale

     (2)切换目录

    cd /oracle/app/oracle/product/19c/dbhome_1/bin

     (3)使用命令配置监听过程

    netca /silent /responsefile  /oracle/app/oracle/product/19c/dbhome_1/assistants/netca/netca.rsp

提示结果:

image.gif

     (4)查看监听的端口

    netstat -tnpl | grep 1521

image.gif      (5)启动监听

    lsnrctl start

image.gif      (6)查看监听

    lsnrctl status

image.gif