zoukankan      html  css  js  c++  java
  • linux下centos静默安装oracle

    Oracle11gR2静默安装

    Oracle11g静默安装-----linux环境

    1.操作系统及oracle版本

    Linux版本:CentOS release 6.5

    Oracle版本:1.ORACLE11G

                2.linux.x64_11gR2_database_1of2.zip

    下载地址:wget  http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_1of2.zi              3.linux.x64_11gR2_database_2of2.zip

      下载地址:wget  http://v.yingsun.net/cobra/download/linux.x64_11gR2_database_2of2.zip  

    2.硬件检测

    物理内存不少于1G

    硬盘可以空间不少于5G

    Sqap分区空间不少于2G

    支持256色以上显卡

    Cpu主频不少于550mHZ

    cat   /etc/issue                          ---查看linux系统

    Uanme  -r                              

    Grep  MemTotal   /proc/meminfo

    Grep  SwapTotal   /proc/meminfo

    Grep  “model  name” /proc/cpuinfo

    Free  

    df  -k  /tmp

    3.检查安装依赖系统包

    操作系统依赖的具体包,请参考官方安装文档。

    以下为 Asianux 3, Oracle Linux 5, Red Hat Enterprise Linux 5, CentOS 5 操作系统依赖的包

    binutils-2.17.50.0.6

    compat-libstdc++-33-3.2.3

    compat-libstdc++-33-3.2.3 (32 bit)

    elfutils-libelf-0.125

    elfutils-libelf-devel-0.125

    gcc-4.1.2

    gcc-c++-4.1.2

    glibc-2.5-24

    glibc-2.5-24 (32 bit)

    glibc-common-2.5

    glibc-devel-2.5

    glibc-devel-2.5 (32 bit)

    glibc-headers-2.5

    ksh-20060214

    libaio-0.3.106

    libaio-0.3.106 (32 bit)

    libaio-devel-0.3.106

    libaio-devel-0.3.106 (32 bit)

    libgcc-4.1.2

    libgcc-4.1.2 (32 bit)

    libstdc++-4.1.2

    libstdc++-4.1.2 (32 bit)

    libstdc++-devel 4.1.2

    make-3.81

    sysstat-7.0.2

    unixODBC-2.2.11 (32-bit) or later

    unixODBC-devel-2.2.11 (64-bit) or later

    unixODBC-2.2.11 (64-bit) or later

    检查依赖包

    rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc-2.5 glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

    如果包有显示is not installed(没安装),就用yum install 命令安装,如:

    yum install compat-libstdc++-33

    4.创建所需的操作系统组和用户

    groupadd oinstall

    groupadd dba

    useradd -g oinstall -G dba oracle

    设置oracle用户密码

    passwd oracle

    5.修改内核参数

    /etc/sysctl.conf 文件中,使用文本编辑器或vi命令增加或修改以下参数

    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

    修改后,使设置生效

    sysctl -p

    6.修改用户限制

    /etc/security/limits.conf 文件中,使用文本编辑器或vi命令增加或修改以下参数

    oracle soft nproc 2047

    oracle hard nproc 16384

    oracle soft nofile 1024

    oracle hard nofile 65536

    oracle soft stack 10240

    /etc/pam.d/login 文件中,使用文本编辑器或vi命令增加或修改以下内容

    session required /lib/security/pam_limits.so

    session required pam_limits.so

    /etc/profile 文件中,使用文本编辑器或vi命令增加或修改以下内容

    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.创建安装目录(可根据情况,选择比较多空间的目录创建)

    mkdir -p /u01/oracle

    chown -R oracle:oinstall /u01/oracle

    chmod -R 775 /u01/oracle

    8.创建/etc/oraInst.loc文件,内容如下

    inventory_loc=/u01/oracle/oraInventory

    inst_group=oinstall

    更改文件的权限

    chown oracle:oinstall /etc/oraInst.loc

    chmod 664 /etc/oraInst.loc

    9.设置oracle环境变量

     su - oracle

    vi  .bash_profile

     在最后加上以下内容

    export ORACLE_BASE=/u01/oracle

    export ORACLE_SID=orcl

    注意,除了ORACLE_BASEORACLE_SID,( /etc/profile.bash_profile)不设置任何oracle相关环境变量(ORACLE_HOME, PATH, LD_LIBRARY_PATH)

    使设置生效

    source  .bash_profile

    检查环境变量:

    env

    10.解压oracle安装文件

    unzip linux.x64_11gR2_database_1of2.zip

    unzip linux.x64_11gR2_database_2of2.zip

    11.复制响应文件模板

    mkdir etc

    cp /u01/oracle/database/response/*  /home/oracle/etc/

    设置响应文件权限

    su - root

    chmod 700 /home/oracle/etc/*.rsp(注意所有者,oinstall

    12.静默安装Oracle软件

    su - oracle

    修改安装Oracle软件的响应文件/home/oracle/etc/db_install.rsp

    oracle.install.option=INSTALL_DB_SWONLY      // 29 安装类型

    ORACLE_HOSTNAME=oracle                          // 37 主机名称(hostname查询)

    UNIX_GROUP_NAME=oinstall                       // 42 安装组

    INVENTORY_LOCATION=/home/oracle/oraInventory            //47 INVENTORY目录(不填就是默认值)  注意:这里inventory目录最好不要填写与oracle安装路径一致的目录,会报错

    SELECTED_LANGUAGES=en,zh_CN,zh_TW                         // 78 选择语言

    ORACLE_HOME=/u01/oracle/product/11.2.0/dbhome         // 83 oracle_home

    ORACLE_BASE=/u01/oracle                                           // 88 oracle_base

    oracle.install.db.InstallEdition=EE                               // 99 oracle版本

    oracle.install.db.isCustomInstall=false                     //自定义安装,否,使用默认组件

    oracle.install.db.DBA_GROUP=dba                        // 143 dba用户组

    oracle.install.db.OPER_GROUP=oinstall                // 147 oper用户组

    oracle.install.db.config.starterdb.type=GENERAL_PURPOSE        // 160 数据库类型

    oracle.install.db.config.starterdb.globalDBName=orcl             // 165 globalDBName

    oracle.install.db.config.starterdb.SID=orcl                          // 170 SID

    oracle.install.db.config.starterdb.memoryLimit=81920      // 200 自动管理内存的内存(M)

    oracle.install.db.config.starterdb.password.ALL=oracle      // 233 设定所有数据库用户使用同一个密码
    SECURITY_UPDATES_VIA_MYORACLESUPPORT=false        // 376(手动写了false

    DECLINE_SECURITY_UPDATES=true                              // 385 设置安全更新(貌似是有bug,这个一定要选true,否则会无限提醒邮件地址有问题,终止安装。PS:不管地址对不对)

    开始静默安装

    cd /u01/oracle/database

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

    这个命令,一直执行失败,失败错误:

    参考下面,我是直接加入了

    -ignorePrereq命令,就可以了。

    [FATAL] [INS-13013] Target environment do not meet some mandatory requirements

    上面的参考文章解决是:安装命令中加入选项-ignorePrereq

    三、安装完毕遇到了,启动监听失败

    一般情况下是 oracle/product/11.2.0/dbhome_1/network/admin/listener.ora

    hostname出错了,修改为ip 就可以解决
    vim   /etc/hosts
    172.19.60.193       oracle
    服务器ip地址            主机名(hostname查看)

    从新修改安装命令:

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

    报错:[FATAL] [INS-32035] Unable to create a new central inventory at the specified location.

       CAUSE: The central inventory location provided is not empty.

       ACTION: Please provide another location for the inventory, or clean up the current location.

    解决方法:

    vim /etc/oralnst.loc
    inventory_loc=/home/oracle/oralnventory
    inst_group=oinstall

    还有另一种错误,就是你已经加入了上边的文件内容,但是安装时还是报同样的错误。解决方法如下:

    进入到oracle安装目录

    cd /u01/oracle/

    ls查看下目录下有没有一个oralnventory文件(我估计这个文件是刚开始执行的时候然后保存下来的或者是以前安装时未删除干净的)

    如果有将这个文件目录删除掉rm -rf oraInventory/

    然后将/etc/oralnst.loc更改

    [root@oracle ~]# cat  /etc/oralnst.loc

    inventory_loc=/home/oracle/oralnventory
    inst_group=oinstall

    执行下

     source /etc/oralnst.loc

    解决了问题,安装完成之后,就会出现如下界面:

    安装完成之后 系统会提示我们用root用户运行如下两个脚本 。

    [root@oracle database]$ sh /u01/oracle/oralnventory/orainstRoot.sh

    [root@oracle ~]# sh /u01/oracle/product/11.2.0/dbhome/root.sh

    su - oracle

    [oracle@oracle ~]$ cat .bash_profile

    # .bash_profile

    umask 022

    TMP=/u01/oracle/tmp

    TMPDIR=/u01/oracle/tmp

    export TMP TMPDIR

    # Get the aliases and functions

    if [ -f ~/.bashrc ]; then

    . ~/.bashrc

    fi

    # User specific environment and startup programs

    PATH=$PATH:$HOME/bin

    export PATH

    export ORACLE_BASE=/u01/oracle

    export ORACLE_SID=orcl

    export  ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome

    export  TNS_ADMIN=$ORACLE_HOME/network/admin

    export  PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin

    export  PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/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/JRE

    export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/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

    [oracle@oracle ~]$ source  .bash_profile

    静默配置网络

    [oracle@oracle ~]$ /u01/oracle/product/11.2.0/dbhome/bin/netca  /silent /responseFile /home/oracle/etc/netca.rsp

    Parsing command line arguments:

        Parameter "silent" = true

        Parameter "responsefile" = /home/oracle/etc/netca.rsp

    Done parsing command line arguments.

    Oracle Net Services Configuration:

    Profile configuration complete.

    Oracle Net Listener Startup:

        Running Listener Control:

          /u01/oracle/product/11.2.0/dbhome/bin/lsnrctl start LISTENER

        Listener Control complete.

        Listener started successfully.

    Listener configuration complete.

    Oracle Net Services configuration successful. The exit code is 0 

    14.静默安装数据库

    静默安装数据库实例 (在oracle 用户安装)

      在这里需要配置静默安装数据库响应的模板文件,也是在安装软件包中解压在database下的response 目录下的 dbca_rsp 文件,具体配置如下:

    [oracle@localhost response]# vim dbca.rsp

    [GENERAL]

    RESPONSEFILE_VERSION = "11.2.0"

    OPERATION_TYPE = "createDatabase"

    [CREATEDATABASE]

    GDBNAME = "lanmao"           #全局数据库的名字

    SID = "orcl"                 # 数据库实例,根据上面的你写的SID 一样的,随便写。

    TEMPLATENAME = "General_Purpose.dbc"   #  这个可以是默认的模板,不会写默认的,最好是默认,

                                     这里是我们dba 写的,所以就用上了。

    SYSPASSWORD = "2011@oracle"

    SYSTEMPASSWORD = "2011@oracle"

    SYSMANPASSWORD = "2011@oracle"

    DBSNMPPASSWORD = "2011@oracle"   # 前面这四个都可以不管,默认就行

    CHARACTERSET = "ZHS16GBK"         #编码

    NATIONALCHARACTERSET=“UTF8”   #编码

    [createTemplateFromDB]

    SOURCEDB = "myhost:1521:orcl"

    SYSDBAUSERNAME = "system"

    TEMPLATENAME = "My Copy TEMPLATE"

    [createCloneTemplate]

    SOURCEDB = "orcl"

    TEMPLATENAME = "My Clone TEMPLATE"

    [DELETEDATABASE]

    SOURCEDB = "orcl"

    [generateScripts]

    TEMPLATENAME = "New Database"

    GDBNAME = "orcl11.us.oracle.com"

    [CONFIGUREDATABASE]

    [ADDINSTANCE]

    DB_UNIQUE_NAME = "orcl11g.us.oracle.com"

    NODELIST=

    SYSDBAUSERNAME = "sys"

    [DELETEINSTANCE]

    DB_UNIQUE_NAME = "orcl11g.us.oracle.com"

    INSTANCENAME = "orcl11g"

    SYSDBAUSERNAME = "sys"

    配置完模板之后,进行静默安装数据库

    $ORACLE_HOME/bin/dbca -silent -responseFile /db/soft/database/response/dbca.rsp

    等到100%安装完成之后就是安装了。

    有关详细信息, 请参阅日志文件  /u01/oracle/cfgtoollogs/dbca/lanmao/lanmao.log"

     

    15.修改oracle启动配置文件

    su - oracle

    vi /etc/oratab

    orcl:/usr/oracle/product/11.2.0/db_1:Y //“N”改成“Y”

     这样就可以通过dbstart 启动此实例,监听器。

     

    dbstart $ORACLE_HOME

    此时所有oracle的进程关闭,监听器也停止。

     

    dbshut $ORACLE_HOME

    再次查看监听器状态。

    lsnrctl   start         ---启动监听

    lsnrctl status         ----查看监听

     

    如果使用归档日志

    Oracle”startup”时报错:

    ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/oracle/product/11.2.0/dbhome/dbs/initorcl.ora'

    解决方法:

    /u01/oracle/product/11.2.0/dbhome/srvm/admin/init.ora

     cd   /u01/oracle/product/11.2.0/dbhome/srvm/admin

     init.ora /u01/oracle/product/11.2.0/dbhome/dbs/initorcl.ora

    [oracle@localhost ~]$ sqlplus /nolog

    SQL> conn / as sysdba                ---进入系统管理用户

    SQL> startup ;                           ---启动oracle实例

    SQL> shutdown immediate;        ---停掉oracle实例

    SQL> create tablespace oracle datafile 'oracle.dbf' size 100M reuse, 'oracle2.dbs' size 100M reuse default storage (initial 500K next 300K pctincrease 20);                   ----创建表空间

    SQL> create user duan identified by "duan" default tablespace oracle profile default  account unlock;                                 -----创建用户

    SQL> grant dba to duan;                                                             ----授权用户dba权限

    Grant succeeded.

    SQL> grant unlimited tablespace to duan;                               

    Grant succeeded.

    SQL> create table z_test(id number,name varchar(20));               ----创建表

    SQL> insert into z_test select 1,'a' from dual;                               ---插入表数据

    SQL> select name from v$database;                                        ---查看实例名

    SQL> select username,default_tablespace from user_users;          ---查看当权用户所在表空间

    select table_name from all_tables where TABLESPACE_NAME='表空间'                                  ---查看表空间中的所有表(表空间名字一定要大写。)

    SQL> alter database archivelog;         

    SQL> alter database flashback on; (如果要启用数据库闪回功能则执行)

    SQL> alter database open;

    SQL> execute utl_recomp.recomp_serial(); (重新编译所有可能失效对象)

    SQL> alter system archive log current; (手工归档测试)

    )

    select table_name from dba_tables;

    成功!!!

    通过sql查询日志文件位置

    SQL> show parameter dump_dest 

      

     NAME                                 TYPE 

    ·------------------------------------ ---------------------- 

    ·  VALUE 

    ·  ------------------------------ 

    ·  background_dump_dest                 string 

    ·  /home/oracle/oracle/admin/TESTDB/bdump 

    ·  core_dump_dest                       string 

    ·  /home/oracle/oracle/admin/TESTDB/cdump 

    ·  user_dump_dest                       string 

    ·  /home/oracle/oracle/admin/TESTDB/udump 

  • 相关阅读:
    使用OTT处理oracle中的对象(一) OTT配置
    mvc全局过滤器和httpmodule的执行顺序
    Cookie的跨域问题
    Request[]与Request.Params[] 差别
    Introduction to Partial View
    MVC异常过滤器在三种作用范围下的执行顺序
    System.Web.UI.Page事件执行顺序
    Controlling Session Behavior in Asp.Net MVC4
    MVC复杂类型的模型绑定
    ROW_NUMBER分页
  • 原文地址:https://www.cnblogs.com/dynwings/p/6708816.html
Copyright © 2011-2022 走看看