zoukankan      html  css  js  c++  java
  • rhel 6.4 + udev + 11.2.0.3 + asm 单点安装


    第一块磁盘的大小为50G,安装RHEL6.4 及 gi standalone,oracle software。
    第二块磁盘的大小为40G,使用udev配置成asm的磁盘。


    安装OS结束后,执行下面的步骤

    cd /mnt
    mkdir cdrom
    mount /dev/cdrom /mnt/cdrom


    chkconfig cups off
    chkconfig sendmail off
    chkconfig isdn off
    chkconfig smartd off
    chkconfig iptables off

    reboot

    创建第二块盘
    cd D:Program FilesVMwareVMware Server

    vmware-vdiskmanager.exe -c -s 40000Mb -a lsilogic -t 2 H:/VM_ware/asm_data1.vmdk

    下面类容添加到 dbasm 的 Red Hat Linux.vmx中

    scsi1.present = "TRUE" 
    scsi1.virtualDev = "lsilogic" 
    scsi1.sharedBus = "virtual" 

    scsi1:1.present = "TRUE" 
    scsi1:1.mode = "independent-persistent" 
    scsi1:1.filename = "H:/VM_ware/asm_data1.vmdk" 
    scsi1:1.deviceType = "plainDisk" 

    disk.locking = "false" 
    diskLib.dataCacheMaxSize = "0" 
    diskLib.dataCacheMaxReadAheadSize = "0" 
    diskLib.DataCacheMinReadAheadSize = "0" 
    diskLib.dataCachePageSize = "4096" 
    diskLib.maxUnsyncedWrites = "0"

    需要添加内容结束


    修改OS的信息

    vi /etc/sysconfig/network

    NETWORKING=yes
    NETWORKING_IPV6=no
    HOSTNAME=dbasm

    vi /etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0
    BOOTPROTO=static
    HWADDR=00:0C:29:59:4B:00
    ONBOOT=yes
    IPADDR=10.1.1.35
    NETMASK=255.255.255.0
    GATEWAY=10.1.1.1


    vi /etc/hosts
    10.1.1.35 asmnode


    --重启网络服务,使修改生效
    service network restart


    建立oracle,grid用户
    11gr2建议将oracle用户的权限分离,当然不分离也是可以的,不过分离是应该的,
    把数据库用户和存储用户区别开,就好比 data tablespace 和index tablespace 一样让人概念清晰,管理方便
    估计会在12c中强制分离

    创建 相应 的组
     groupadd -g 501 oinstall
     groupadd -g 502 dba
     groupadd -g 503 oper

     groupadd -g 504 asmadmin
     groupadd -g 505 asmdba
     groupadd -g 506 asmoper
     
    创建oracle用户及grid用户,这里可以看出grid的权限是比oracle大的
     useradd -u 1100 -g oinstall -G asmdba,dba,oper oracle
     useradd -u 1110 -g oinstall -G asmadmin,asmdba,asmoper,dba,oper grid

    修改用户的密码
     passwd oracle
     passwd grid


    如果有错可以用usermod 命令修改
    usermod -G osasm,osdba,osoper,dba,oper oracle


    创建目录
    mkdir -p /u01/app/oracle/product/11.2.0/db_1
    mkdir -p /u01/app/grid/product/11.2.0/grid_1
    mkdir -p /u01/app/gridbase

    chown -R oracle:oinstall /u01/app
    chown -R grid:oinstall /u01/app/grid
    chown -R grid:oinstall /u01/app/gridbase
    chmod -R 775 /u01

    修改一些系统配置
    vi /etc/security/limits.conf
    #ORACLE SETTING
    grid                 soft    nproc   655350
    grid                 hard    nproc   655350
    grid                 soft    nofile  655350
    grid                 hard    nofile  655350

    oracle               soft    nproc   655350
    oracle               hard    nproc   655350
    oracle               soft    nofile  655350
    oracle               hard    nofile  655350


    vi /etc/pam.d/login
    #ORACLE SETTING
    session    required    /lib64/security/pam_limits.so
    session    required    pam_limits.so


    vi /etc/sysctl.conf
    #ORACLE SETTING
    #kernel.shmall = 2097152
    #kernel.shmmax = 536870912
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    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

    立即生效
    sysctl -p

    禁止selinux
    vi /etc/selinux/config
    SELINUX=disabled


    关掉防火墙
    service iptables status
    service iptables stop
    chkconfig iptables off


    --应该是不需要的,单机需要时间同步?在11gr2 RAC中建议使用CTSS
    gird时间同步所需要的设置,Network Time Protocol Setting

    /sbin/service ntpd stop
    chkconfig ntpd off
    mv /etc/ntp.conf /etc/ntp.conf.bak 或者 rm /etc/ntp.conf

    fdisk 处理裸设备,切记不要格式化为文件系统 

    特别注意:如果是虚拟机,就要在虚拟机的配置文件里设置 disk.EnableUUID = "TRUE",否则 scsci_id 获取不到磁盘的字符串
    /dev/sdb1
    /dev/sdb2
    /dev/sdb3

    /sbin/partprobe /dev/sdb1
    /sbin/partprobe /dev/sdb2
    /sbin/partprobe /dev/sdb3

    配置udev设备
    touch /etc/udev/rules.d/99-oracle-asmdevices.rules

    #添加记录到/etc/scsi_id.config,如果没有该文件,则手动创建
    echo "options=--whitelisted --replace-whitespace"  >> /etc/scsi_id.config

    for i in b1 b2 b3
    do
    echo "KERNEL=="sd$i", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$parent", RESULT=="`/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd${i:0:1}`", NAME="asm-disk$i", OWNER="grid", GROUP="asmadmin", MODE="0660""      
    done;

    输出结果添加到 /etc/udev/rules.d/99-oracle-asmdevices.rules

    # /sbin/udevadm control --reload-rules
    # start_udev

    # ls -lrt /dev/asm*


    oracle 用户的.bash_profile 文件
    vi /home/oracle/.bash_profile

    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
    export ORACLE_SID=dbasm
    #export TNS_ADMIN=$ORACLE_HOME/network/admin
    #export ORA_NLS10=$ORACLE_HOME/nls/data
    export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

    export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin
    export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
    export PATH=${PATH}:$ORACLE_BASE/common/oracle/bin

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

    export TEMP=/tmp
    export TMP=/tmp
    export TMPDIR=/tmp


    用户的.bash_profile 文件 ORACLE_HOSTNAME请自行设置
    vi /home/grid/.bash_profile
    export ORACLE_BASE=/u01/app/gridbase
    export ORACLE_HOME=/u01/app/grid/product/11.2.0/grid_1
    export ORACLE_SID=+ASM

    export TEMP=/tmp
    export TMP=/tmp
    export TMPDIR=/tmp

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


    yum 配置

    vi /etc/yum.conf
    追加如下内容
    [base]
    name=base pyb yum test
    baseurl=file:///mnt/cdrom
    gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

    [updates-released]
    name= updates-released pyb yum test
    baseurl=file:///mnt/cdrom
    gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

    修改其中的 gpgcheck参数,改为gpgcheck=0 
    修改其中的 enabled参数,改为enabled=1 


    先安装 gi software ,可以仅安装软件,或者安装软件时同时配置( standalone)。建议后面一种方式。
    再安装 oracle software,之后再dbca建库

    安装 grid software,这里是仅安装软件,中间会检查系统参数和OS的依赖包,用yum install 安装就可以了
    最后运行弹出窗口的脚本
    /u01/app/oraInventory/orainstRoot.sh
    /u01/app/grid/product/11.2.0/grid_1/root.sh


    配置监听
    [grid@asmnode software]$ netca 

    运行asmca
    [grid@asmnode software]$ asmca

    如果只安装软件,在运行asmca 时会报错,需要 以root运行 grid 用户的这个文件 
    # perl /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl 
    可以会出错,提示要先卸载
    # perl /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl -verbose -deconfig -force


    重新运行root.sh
    # /u01/app/grid/product/11.2.0/grid_1/root.sh
    # perl /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl

    下面为相关的日志输出,供学习研究用
    # perl /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl
    Using configuration parameter file: /u01/app/grid/product/11.2.0/grid_1/crs/install/crsconfig_params
    User ignored Prerequisites during installation
    CRS is already configured on this node for crshome=/u01/app/grid/product/11.2.0/grid_1
    Cannot configure two CRS instances on the same cluster.
    Please deconfigure before proceeding with the configuration of new home. 


    # perl /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl -verbose -deconfig -force
    Using configuration parameter file: /u01/app/grid/product/11.2.0/grid_1/crs/install/crsconfig_params
    PRKO-2573 : ONS daemon is already stopped.
    CRS-2500: Cannot stop resource 'ora.cssd' as it is not running
    CRS-4000: Command Stop failed, or completed with errors.
    CRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on 'asmnodedup'
    CRS-2673: Attempting to stop 'ora.evmd' on 'asmnodedup'
    CRS-2677: Stop of 'ora.evmd' on 'asmnodedup' succeeded
    CRS-2793: Shutdown of Oracle High Availability Services-managed resources on 'asmnodedup' has completed
    CRS-4133: Oracle High Availability Services has been stopped.

    Successfully deconfigured Oracle Restart stack


    # /u01/app/grid/product/11.2.0/grid_1/root.sh
    Performing root user operation for Oracle 11g 

    The following environment variables are set as:
        ORACLE_OWNER= grid
        ORACLE_HOME=  /u01/app/grid/product/11.2.0/grid_1

    Enter the full pathname of the local bin directory: [/usr/local/bin]: 
    The contents of "dbhome" have not changed. No need to overwrite.
    The contents of "oraenv" have not changed. No need to overwrite.
    The contents of "coraenv" have not changed. No need to overwrite.

    Entries will be added to the /etc/oratab file as needed by
    Database Configuration Assistant when a database is created
    Finished running generic part of root script.
    Now product-specific root actions will be performed.

    To configure Grid Infrastructure for a Stand-Alone Server run the following command as the root user:
    /u01/app/grid/product/11.2.0/grid_1/perl/bin/perl -I/u01/app/grid/product/11.2.0/grid_1/perl/lib -I/u01/app/grid/product/11.2.0/grid_1/crs/install /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl

    To configure Grid Infrastructure for a Cluster execute the following command:
    /u01/app/grid/product/11.2.0/grid_1/crs/config/config.sh
    This command launches the Grid Infrastructure Configuration Wizard. The wizard also supports silent operation, and the parameters can be passed through the response file that is available in the installation media.



    # perl /u01/app/grid/product/11.2.0/grid_1/crs/install/roothas.pl
    Using configuration parameter file: /u01/app/grid/product/11.2.0/grid_1/crs/install/crsconfig_params
    User ignored Prerequisites during installation
    LOCAL ADD MODE 
    Creating OCR keys for user 'grid', privgrp 'oinstall'..
    Operation successful.
    LOCAL ONLY MODE 
    Successfully accumulated necessary OCR keys.
    Creating OCR keys for user 'root', privgrp 'root'..
    Operation successful.
    CRS-4664: Node asmnodedup successfully pinned.
    Adding Clusterware entries to upstart

    asmnode     2016/04/26 08:56:20     /u01/app/grid/product/11.2.0/grid_1/cdata/asmnodedup/backup_20160426_085620.olr
    Successfully configured Oracle Grid Infrastructure for a Standalone Server


    grid 用户下,注意用sysasm登录(11g新加的角色)
    $ sqlplus /nolog
    SQL> conn / as sysasm
    Connected.
    SQL> shutdown immediate
    ASM diskgroups dismounted
    ASM instance shutdown
    ------------
    如果在11g grid 下启动asm实例会报 ORA-29701 错误
    $ sqlplus / as sysasm
    SQL*Plus: Release 11.2.0.3.0 Production onTue Apr 26 15:44:30 2016
    Copyright (c) 1982, 2011, Oracle.  All rights reserved.
    Connected to an idle instance.
    SQL> startup
    ORA-01078: failure in processing system parameters
    ORA-29701: unable to connect to Cluster Synchronization Service

    那是因为css没有起来,可以手动起来,或者稍等一下,因为重启后会随着系统启动,存在延迟

    注意用户.bash_profile 的 ORACLE_SID 和dbca 的实例名的大小写

    --检查css
    crsctl check css  
    ps -ef|grep -i cssd

    --检查has
    crsctl check has  
    ps -ef|grep -i d.bin

    手动启动css
    crsctl start resource ora.cssd  

    手动启动全部资源
    crsctl start resource -all

    # ./crs_stat -t -v
    Name           Type           R/RA   F/FT   Target    State     Host        
    ----------------------------------------------------------------------
    ora.DG_DATA.dg ora....up.type 0/5    0/     ONLINE    ONLINE    asmnode     
    ora.asm        ora.asm.type   0/5    0/     ONLINE    ONLINE    asmnode     
    ora.cssd       ora.cssd.type  0/5    0/5    ONLINE    ONLINE    asmnode     
    ora.dbasm.db   ora....se.type 0/2    0/1    ONLINE    ONLINE    asmnode     
    ora.diskmon    ora....on.type 0/10   0/5    OFFLINE   OFFLINE               
    ora.evmd       ora.evm.type   0/10   0/5    ONLINE    ONLINE    asmnode     
    ora.ons        ora.ons.type   0/3    0/     OFFLINE   OFFLINE   

    # ./crsctl status resource -t -init
    --------------------------------------------------------------------------------
    NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
    --------------------------------------------------------------------------------
    Local Resources
    --------------------------------------------------------------------------------
    ora.DG_DATA.dg
                   ONLINE  ONLINE       asmnode                                      
    ora.asm
                   ONLINE  ONLINE       asmnode                  Started             
    ora.ons
                   OFFLINE OFFLINE      asmnode                                      
    --------------------------------------------------------------------------------
    Cluster Resources
    --------------------------------------------------------------------------------
    ora.cssd
          1        ONLINE  ONLINE       asmnode                                      
    ora.dbasm.db
          1        ONLINE  ONLINE       asmnode                  Open                
    ora.diskmon
          1        OFFLINE OFFLINE                                                   
    ora.evmd
          1        ONLINE  ONLINE       asmnode   

    1)默认情况下HAS(High Availability Service)是自动启动的.通过如下命令可以取消和启用自动启动
            crsctl disable has        
            crsctl enable has      
    2)HAS手动启动和停止        
            crsctl start has        
            crsctl stop has      
    3)查看HAS的状态        
            crsctl check has      
    4)如果想让ora.css和ora.diskmon服务随着HAS的启动而自动启动,
      那么你可以这两个服务的AUTO_START属性        
      crsctl modify resource "ora.cssd" -attr "AUTO_START=1"       
      or         
      crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"   
      
    5)如果想取消ora.css和ora.diskmon的Auto start         
      crsctl modify resource "ora.cssd" -attr "AUTO_START=never"  
      or  
      crsctl modify resource "ora.diskmon" -attr "AUTO_START=never"

    ----------------------------------------------------------


    安装oracle software,仅安装数据库软件
    下一步,一直下一步 注意选择 only database software
    /u01/app/oracle/product/11.2.0/db_1/root.sh 

    分别运行后 数据库软件就算安装完毕了

    开始创建数据库,运行dbca
    $ dbca

    注意存储时选择ASM,

    DG_DATA01

    注意选择数据库的编码,要和OS的 NLS_LANG 变量一致

    再后面是创建数据库了,没什么好说的了









     
  • 相关阅读:
    风云受邀参加CMAX2009技术峰会演讲嘉宾
    银光志—Silverlight 3.0技术详解与最佳实践上架中文亚马逊卓越网和当当网
    Silverlight进度条控件动画源代码
    Silverlight4 Tools下载
    在C#代码中获取Silverlight的初始化initparams参数
    css层的定位position、absolute、relative层叠加的五条叠加法则
    《银光志—Silverlight3.0技术详解与最佳实践》仅上架两周排名互动出版网第三名
    《银光志Silverlight 3.0开发详解与最佳实践》出版电子版——风云编著
    银客帝国招聘Silverlight兼职开发人员
    Silverlight 2使用C#遍历XML(兼容Silverlight3)
  • 原文地址:https://www.cnblogs.com/ctypyb2002/p/9793174.html
Copyright © 2011-2022 走看看