美文网首页
Centos7静默安装Oracle11.2.0.4

Centos7静默安装Oracle11.2.0.4

作者: 小豹小豹 | 来源:发表于2021-01-14 18:01 被阅读0次

    1.安装前准备

    修改主机名;
    hostnamectl set-hostname oracle
    修改hosts文件中的主机名
    vi /etc/hosts
    关闭防火墙和selinux:

    systemctl stop firewalld.service #关闭防火墙
    systemctl disable firewalld.service #禁止防火墙开机启动
    vi /etc/selinux/config #编辑文件
    SELINUX=disabled  #修改的内容
    

    2. 安装依赖

    yum -y install binutils
    compat-libstdc++-33
    elfutils-libelf
    elfutils-libelf-devel
    expat
    gcc
    gcc-c++
    glibc
    glibc-common
    glibc-devel
    glibc-headers
    libaio
    libaio-devel
    libgcc
    libstdc++
    libstdc++-devel
    make
    pdksh
    sysstat
    unixODBC
    unixODBC-devel

    3. 检查未安装的依赖

    rpm -q \
    binutils \
    compat-libstdc++-33 \
    elfutils-libelf \
    elfutils-libelf-devel \
    expat \
    gcc \
    gcc-c++ \
    glibc \
    glibc-common \
    glibc-devel \
    glibc-headers \
    libaio \
    libaio-devel \
    libgcc \
    libstdc++ \
    libstdc++-devel \
    make \
    pdksh \
    sysstat \
    unixODBC \
    unixODBC-devel | grep "not installed"
    

    不能YUM安装的,下载rpm文件安装。

    4、添加oracle用户组和用户:

    groupadd oinstall
    groupadd dba
    groupadd asmadmin
    groupadd asmdba
    useradd -g oinstall -G dba,asmdba oracle -d /home/oracle
    

    oracle 密码设置

    passwd oracle 
    
    1. 优化OS内核参数
      // kernel.shmmax 参数设置为物理内存的一半
      vi /etc/sysctl.conf
      内容如下:
    fs.aio-max-nr=1048576
    fs.file-max=6815744
    kernel.shmall=2097152
    kernel.shmmni=4096
    kernel.shmmax = 8589589417
    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=1048586
    

    6.修改oracle用户的限制权限

    vi /etc/security/limits.conf
    在末尾添加

    oracle  soft    nproc   2047
    oracle  hard    nproc   16384
    oracle  soft    nofile  1024
    oracle  hard    nofile  65536
    oracle  soft    stack   10240
    oracle  hard    stack   10240
    

    vi /etc/pam.d/login

    session  required   /lib64/security/pam_limits.so
    session  required   pam_limits.so
    

    vi /etc/profile

    if [ $USER = "oracle" ]; then
     if [ $SHELL = "/bin/ksh" ]; then
         ulimit -p 16384
         ulimit -n 65536
     else
         ulimit -u 16384 -n 65536
     fi
    fi
    

    使之生效:
    source /etc/profile

    7. 创建oracle安装目录

    mkdir -p /db/app/oracle/product/11.2.0
    mkdir /db/app/oracle/oradata
    mkdir /db/app/oracle/oraInventory
    mkdir /db/app/oracle/fast_recovery_area
    chown -R oracle:oinstall /db/app/oracle
    chmod -R 775 /db/app/oracle
    

    8.创建 vi /etc/oraInst.loc

    inventory_loc=/db/app/oracle/oraInventory
    inst_group=oinstall
    chown oracle:oinstall /etc/oraInst.loc
    chmod 664 /etc/oraInst.loc
    

    9. 配置oracle用户环境变量

    su - oracle  ## oracle用户登陆
    

    vi .bash_profile

    export ORACLE_HOSTNAME=oracle
    export ORACLE_BASE=/db/app/oracle
    export ORACLE_SID=ORCL
    export LC_ALL="en_US"
    export LANG="en_US"
    export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
    export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
    

    // 以上配置完成后,建议重启系统 或分别执行以下命令:

    source /home/oracle/.bash_profile
    env
    

    10. 上传压缩包

    上传linux.x64_11gR2_database_*of2.zip文件至/db/目录;
    cd /db/
    ls
    unzip linux.x64_11gR2_database_1of2.zip -d /db
    unzip linux.x64_11gR2_database_2of2.zip -d /db

    解压完成后:
    登录Root,复制授权

    su - root
    mkdir /home/oracle/etc/
    cp /db/database/response/* /home/oracle/etc/
    chmod 777 /home/oracle/etc/*.rsp
    

    11. 静默安装配置文件

    // 登录oracle用户:

    su – oracle
    vi /home/oracle/etc/db_install.rsp
    

    //将对应选项修改如下:

    oracle.install.option=INSTALL_DB_SWONLY
    UNIX_GROUP_NAME=oinstall
    INVENTORY_LOCATION=/db/app/oracle/oraInventory
    SELECTED_LANGUAGES=en,zh_CN
    ORACLE_HOSTNAME=oracle
    ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1
    ORACLE_BASE=/db/app/oracle
    oracle.install.db.InstallEdition=EE
    oracle.install.db.isCustomInstall=true
    oracle.install.db.DBA_GROUP=dba
    oracle.install.db.OPER_GROUP=oinstall
    oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
    oracle.install.db.config.starterdb.globalDBName=orcl
    oracle.install.db.config.starterdb.SID=orcl
    oracle.install.db.config.starterdb.memoryLimit=512
    oracle.install.db.config.starterdb.password.ALL=oracle
    DECLINE_SECURITY_UPDATES=true
    

    cd /db/database/

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

    //安装期间可以使用tail命令监看oracle的安装日志

    tail -f /db/app/oracle/oraInventory/logs/installActions2019-05-25_10-38-29AM.log
    

    成功后:

    su - root
    /db/app/oracle/product/11.2.0/db_1/root.sh
    

    12. 增加或修改oracle的环境变量

    su  - oracle
     
    vi ~/.bash_profile
     
    export ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1
    export TNS_ADMIN=$ORACLE_HOME/network/admin
    export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
    export PATH=${PATH}:/usr/bin:/bin:/usr/local/bin
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
    export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib
    export ORACLE_OWNER=oracle
    export SPFILE_PATH=$ORACLE_HOME/dbs
    export ORA_NLS10=$ORACLE_HOME/nls/data
    

    生效

    source ~/.bash_profile
    

    13.配置监听程序

     cd /db/app/oracle/product/11.2.0/db_1/bin
     
     ./netca /silent /responseFile /home/oracle/etc/netca.rsp
    

    13. 启动监听程序

    [oracle@oracle bin]$ pwd
    /db/app/oracle/product/11.2.0/db_1/bin
    # 启动监听
    [oracle@oracle bin]$ lsnrctl start
    # 查看监听状态
    [oracle@oracle bin]$ lsnrctl status
    

    14.静默dbca建库

    修改应答文件:

    [oracle@oracle ~]$ vi /home/oracle/etc/dbca.rsp
    
    GDBNAME="orcl.oracle" 
    SID="orcl"
    SYSPASSWORD = "oracle" 
    SYSTEMPASSWORD = "oracle" 
    CHARACTERSET="AL32UTF8" 
     ="UTF8"
    # 执行:
    /db/app/oracle/product/11.2.0/db_1/bin
    ./dbca -silent -responseFile /home/oracle/etc/dbca.rsp
    

    15. 设置开机启动

    [oracle@oracle bin]$ vi /etc/oratab
    orcl:/db/app/oracle/product/11.2.0/db_1:Y  # //把“N”改成“Y”
    # 保存退出
    [oracle@oracle bin]$ pwd
    /db/app/oracle/product/11.2.0/db_1/bin
    # 通过dbstart 启动此实例,监听器
    ## ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
    ## Usage: ./dbstart ORACLE_HOME
    [oracle@oracle bin]$ ./dbstart $ORACLE_HOME;
    # oracle的进程关闭,监听器也停止;
    [oracle@oracle bin]$ ./dbshut $ORACLE_HOME;
    # 启动监听
    [oracle@oracle bin]$ ./lsnrctl start;
    # 查看监听
    [oracle@oracle bin]$ ./lsnrctl status
    

    16.启动oracle

     [oracle@oracle bin]$ pwd
    /db/app/oracle/product/11.2.0/db_1/bin
    [oracle@oracle bin]$ ./sqlplus /nolog
    # 进入系统管理用户
    SQL> conn / as sysdba
    Connected to an idle instance.
    # 启动oracle实例
    SQL> startup
    出现报错:
    ORA-00845: MEMORY_TARGET not supported on this system
    Oracle 11G 中出现了memory_target 参数,用以实现自动 内存管理 。这个参数的实际使用 需要/dev/shm 空间的支持,如果/dev/shm的空间小于memory_target的值 ,就会报上面错误。
    cat  /db/app/oracle/product/11.2.0/db_1/dbs/initORCL.ora 查看到memory_target的大小
    df -h 查看/dev/shm 可用空间大小
    如果/dev/shm 可用空间大小 小于memory_target 就会报上面的错。
    
    解决办法:加大/dev/shm size。
    

    相关文章

      网友评论

          本文标题:Centos7静默安装Oracle11.2.0.4

          本文链接:https://www.haomeiwen.com/subject/kyvvaktx.html