zoukankan      html  css  js  c++  java
  • 【Centos linux系统】命令行(静默)安装oracle 11gR2

    一.安装前准备

      1.内存及swap要求

        至于swap如何添加,后文将提到

      

    1
    2
    grep MemTotal /proc/meminfo
    grep SwapTotal /proc/meminfo

      2.硬盘空间

      

      3.修改主机名,及ip对应关系

    复制代码
    --设置主机名,也可以直接修改配置文件/etc/sysconfig/network,不过这个是重启之后才起作用
    #sed -i "s/HOSTNAME=localhost.localdomain/HOSTNAME=DB_2/g" /etc/sysconfig/network
    
    --如果不想重启,则使用下面命令,使当前生效 #hostname DB_2

    --添加主机名与IP对应记录
    #vi /etc/hosts 

    127.0.0.1 cr-testsrv01
    192.168.15.2 cr-testsrv01
    192.168.15.2 db1



    复制代码

      4.关闭Selinux(可以不操作)

    --我自己没有关闭过selinux,这个是网上提供说需要关闭的
    # sed -i "s/SELINUX=enforcing/SELINUX=disabled/"/etc/selinux/config # setenforce 0

      5.下载oracle11gR2

      官网下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-linx8664soft-100572.html

    二.修改内核参数

      1./etc/sysctl.conf

    复制代码
    --修改或添加,具体参数意思,请百度或参考oracle官网解释
    #vi/etc/sysctl.conf  
    net.ipv4.ip_local_port_range= 9000 65500 
    fs.file-max = 6815744 kernel.shmall = 10523004 kernel.shmmax = 6465333657 kernel.shmmni = 4096 kernel.sem = 250 32000 100128 net.core.rmem_default=262144 net.core.wmem_default=262144 net.core.rmem_max=4194304 net.core.wmem_max=1048576 fs.aio-max-nr = 1048576 # sysctl -p #使配置生效
    复制代码

      2.用户的限制文件/etc/security/limits.conf 

    复制代码
    #vim /etc/security/limits.conf 在文件后增加
     oracle           soft    nproc           2047
     oracle           hard    nproc           16384
     oracle           soft    nofile          1024
     oracle           hard    nofile          65536
     oracle           soft    stack           10240

    --修改/etc/pam.d/login文件,增加如下:
     session  required   /lib64/security/pam_limits.so  //64为系统,千万别写成/lib/security/pam_limits.so,否则导致无法登录
     session  required   pam_limits.so
    复制代码

    三.创建用户及组

    复制代码
    //创建用户及组
    #groupadd oinstall 
    #groupadd dba
    #useradd -g oinstall -G dba -d /home/u11 oracle
    #passwd oracle

    //创建安装目录 #mkdir -p /opt/app/oracle/product/11.2.0/db_1
    //数据文件存放目录 #mkdir -p /opt/app/oracle/oradata //数据恢复目录
    #mkdir -p /opt/app/oracle/recovery_area //数据库创建及使用过程中的日志目录
    #mkdir -p /opt/app/oracle/oraInventory

    //修改安装目录权限
    #chown -R oracle:oinstall /opt/app/oracle
    #chmod 775 /opt/app/oracle
    //登录oracle用户,设置环境变量
    #su - oracle
    $vim .bash_profile

      

    export ORACLE_BASE=/home/oracle/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
    export ORACLE_SID=orcl
    export ORACLE_TERM=xterm
    export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin/
    export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
    export DISPLAY=192.168.1.128:0.0
    #如果设置NLS_LANG,容易产生导入sql或dmp出错,因为其他环境下的不是utf8

    export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

    $source .bash_profile   //使设置生效
    复制代码

     四.安装oracle

      1.安装依赖包

    复制代码
    # yum -y install gcc gcc-c++ make binutilscompat-libstdc++-33 elfutils-libelf elfutils-libelf-develglibc glibc-commonglibc-devel libaio libaio-devel libgcclibstdc++libstdc++-devel unixODBC unixODBC-devel ksh
    或
    # yum -y install binutils compat-libstdc++-33 compat-libstdc++-33.i686 
    elfutils-libelfelfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common 
    glibc-devel glibc-devel.i686glibc-headers ksh libaio libaio.i686 libaio-devel 
    libaio-devel.i686 libgcclibgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel make 
    sysstat unixODBC unixODBC-devel
    复制代码

      2.解压安装包

      3.数据库安装

        db_install.rsp 安装应答配置文件

        dbca.rsp 创建数据库应答

        netca.rsp 建立监听、本地服务名等网络设置应答

        3.1 修改配置文件db_install.rsp,并安装

          下面把主要修改的地方贴出来,具体详细文件,请查看另一篇文章:【Oracle 11gR2】db_install.rsp详解http://www.cnblogs.com/yingsong/p/6031452.html

    复制代码
    oracle.install.option=INSTALL_DB_SWONLY
    ORACLE_HOSTNAME=DB_m2
    UNIX_GROUP_NAME=oinstall
    INVENTORY_LOCATION=/home/oracle/oracle/oraInventory
    SELECTED_LANGUAGES=en,zh_CN
    ORACLE_HOME=/home/oracle/oracle/product/11.2.0/db_1
    ORACLE_BASE=/home/oracle/oracle
    oracle.install.db.InstallEdition=EE
    oracle.install.db.DBA_GROUP=dba
    oracle.install.db.OPER_GROUP=oinstall
    oracle.install.db.config.starterdb.characterSet=AL32UTF8
    oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
    oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/home/oracle/oracle/oradata
    oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/home/oracle/oracle/recovery_data
    DECLINE_SECURITY_UPDATES=true    //一定要设为true
    复制代码

        登录oracle用户,执行安装

    复制代码
    $./runInstaller -silent -responseFile /home/u11/database/response/db_install.rsp 
    //安装过程中,如果提示[WARNING]不必理会,此时安装程序仍在进行,如果出现[FATAL],则安装程序已经停止了。
    //打开另一个终端,执行命令
    #tail -100 f /u01/app/oracle/oraInventory/logs/installActions......log

    //可以实时跟踪查看安装日志,了解安装的进度。
    //当出现


      以下配置脚本需要以 "root" 用户的身份执行。
       #!/bin/sh
       #要运行的 Root 脚本

      /home/oracle/oracle/oraInventory/orainstRoot.sh
      /home/oracle/oracle/product/11.2.0/db_1/root.sh
      要执行配置脚本, 请执行以下操作:
         1. 打开一个终端窗口
         2. 以 "root" 身份登录
         3. 运行脚本
         4. 返回此窗口并按 "Enter" 键继续

      Successfully Setup Software.

    //出现这个的话,说明已安装成功,则需要按提示操作,操作完返回Enter成功

    复制代码

        

        3.2 配置监听配置文件response/netca.rsp

    $netca /silent /responsefile /home/oracle/softwares/database/response/netca.rsp
    
    正在对命令行参数进行语法分析:
     参数"silent" = true
     参数"responsefile" = /home/oracle/response/netca.rsp
     完成对命令行参数进行语法分析。
     Oracle Net Services 配置:
     完成概要文件配置。
     Oracle Net 监听程序启动:
      正在运行监听程序控制:
        /opt/oracle/11.2.0/bin/lsnrctl start LISTENER
      监听程序控制完成。
      监听程序已成功启动。
     监听程序配置完成。
     成功完成 Oracle Net Services 配置
    
    //成功运行后,在/opt/oracle/11.2.0/network/admin目录下生成sqlnet.ora和listener.ora两个文件。
    //完成后通过命令“netstat -tlnp”可以查看到1521端口已开
    tcp  0   0 :::1521        :::*      LISTEN      5477/tnslsnr
    复制代码

        3.3 修改配置文件response/dbca.rsp,静默建立新库

    复制代码
     RESPONSEFILE_VERSION = "11.2.0"  //不能更改
     OPERATION_TYPE = "createDatabase"
     GDBNAME = "hello.dlxg.gov.cn"  //全局数据库的名字=SID+主机域名
     SID = "hello"    //对应的实例名

     SYSPASSWORD = "credit"

       SYSTEMPASSWORD = "credit"

     TEMPLATENAME = "General_Purpose.dbc" //建库用的模板文件
     DATAFILEDESTINATION = /opt/oracle/oradata //数据文件存放目录
     RECOVERYAREADESTINATION=/opt/oracle/recovery_data //恢复数据存放目录
     CHARACTERSET = "AL32UTF8"   //字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。
     TOTALMEMORY = "5120"    //oracle内存5120MB
    复制代码

         配置完之后,执行命令

    复制代码
    $dbca -silent -responseFile /home/oracle/softwares/database/response/dbca.rsp
     

    1% 已完成
     3% 已完成
     11% 已完成
     18% 已完成
     26% 已完成
     37% 已完成
     正在创建并启动 Oracle 实例
     40% 已完成
     45% 已完成
     50% 已完成
     55% 已完成
     56% 已完成
     60% 已完成
     62% 已完成
     正在进行数据库创建

    66% 已完成
     70% 已完成
     73% 已完成
     85% 已完成
     96% 已完成
     100% 已完成
     有关详细信息, 请参阅日志文件 "/u01/app/oracle/cfgtoollogs/dbca/wang/wang.log"。

     vim /home/oracle/oracle/product/11.2.0/db_1/network/admin/listener.ora

    添加:

    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = credit)
    (ORACLE_HOME =/home/oracle/oracle/product/11.2.0/db_1)
    )
    )

    查看日志文件
     $ cat /u01/app/oracle/cfgtoollogs/dbca/wang/wang.log

    复制代码

    $ su – oracle 
    $ sqlplus / nolog 
    sql> conn / as sysdba 
    sql> startup (一般不需要加参数,只要设置好环境变量) 
    sql> quit (退出sql模式) 
    $ lsnrctl start (启动监听器)关闭oracle 
    $ lsnrctl stop(关闭监听器,在这之前,应该先关闭应用程序) 
    $ sqlplus  /nolog 
    sql>shutdown 其参数 :shutdown有四个参数,四个参数的含义如下:
    Normal 需要等待所有的用户断开连接
    Immediate 等待用户完成当前的语句
    Transactional 等待用户完成当前的事务
    Abort 不做任何等待,直接关闭数据库
    normal需要在所有连接用户断开后才执行关闭数据库任务,所以有的时候看起来好象命令没有运行一样!在执行这个命令后不允许新的连接
    immediate在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。
    transactional 在拥护执行完当前事物后断开连接,并不允许新的用户连接数据库。
    abort 执行强行断开连接并直接关闭数据库。
    前三种方式不回丢失用户数据。第四种在不的已的情况下,不建议采用! 
    经常遇到的问题:

    1)权限问题,解决方法,切换到oracle用户;

    2)没有关闭监听器 ,解决方法:关闭监听器

    3)有oracle实例没有关闭,解决办法:关闭oracle实例

    4)环境变量设置不全,解决办法:修改环境变量

    Oracle数据库的启动和关闭方式小结

    Oracle数据库的启动和关闭方式

    一、几种启动方式:

    1、startup nomount
    非安装启动,这种方式启动下可执行:重建控制文件、重建数据库
    启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。
    2、startup mount dbname
    安装启动,这种方式启动下可执行:数据库日志归档、数据库恢复、重新命名一些数据库文件
    如:系统表空间或日志文件。
    执行“nomount”,然后打开控制文件
    3、startup open dbname
    先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,
    这种方式下可访问数据库中的数据。
    4、startup,等于以下三个命令
    startup nomount
    alter database mount
    alter database open
    5、startup restrict
    约束方式启动
    这种方式能够启动数据库,但只允许具有一定特权的用户访问
    非特权用户访问时,会出现以下提示:
    ERROR:
    ORA-01035: ORACLE 只允许具有 RESTRICTED SESSION 权限的用户使用
    6、startup force
    强制启动方式
    当不能关闭数据库时,可以用startup force来完成数据库的关闭
    先关闭数据库,再执行正常启动数据库命令
    7、startup pfile=参数文件名
    带初始化参数文件的启动方式
    先读取参数文件,再按参数文件中的设置启动数据库
    例:startup pfile=E:/Oracle/admin/oradb/pfile/init.ora
    8、startup EXCLUSIVE

    二、几种关闭方式:

    1、shutdown normal
    正常方式关闭数据库。
    2、shutdown immediate
    立即方式关闭数据库。
    在SVRMGRL中执行shutdown immediate,数据库并不立即关闭,
    而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源),
    当使用shutdown不能关闭数据库时,shutdown immediate可以完成数据库关闭的操作。
    3、shutdown abort
    直接关闭数据库,正在访问数据库的会话会被突然终止,
    如果数据库中有大量操作正在执行,这时执行shutdown abort后,重新启动数据库需要很长时间。

    五. 开启归档模式,制定归档目录

  • 相关阅读:
    微软外服 AlI In One
    js 循环多次和循环一次的时间的性能对比 All In One
    vue inject All In One
    Excel 表格数据倒置 All In One
    SVG tickets All In One
    OH MY ZSH All In One
    js array for loop performance compare All In One
    mac terminal show You have new mail All In one
    新闻视频 26 制作母版页
    转自牛腩 母版页和相对路径
  • 原文地址:https://www.cnblogs.com/lambertwe/p/7812941.html
Copyright © 2011-2022 走看看