Chinaunix首页 | 论坛 | 博客
  • 博客访问: 846697
  • 博文数量: 105
  • 博客积分: 636
  • 博客等级: 中士
  • 技术积分: 1704
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-11 10:57
文章分类

全部博文(105)

文章存档

2017年(4)

2016年(9)

2015年(18)

2014年(16)

2013年(34)

2012年(24)

分类: Oracle

2013-04-11 14:36:12

1.首先安装centos 5.4
2.上传 oracle 10g 的压缩文件
10201_database_linux_x86_64.cpio
2.1 解压
gunzip 10201_database_linux_x86_64.cpio.gz

cpio -idmv < 10201_database_linux_x86_64.cpio
3.下载asm 包并
 根据实际情况下载所需要的asm包
 
下载后安装
 rpm -ivh oracleasm-2.6.18-164.el5-2.0.5-1.el5.x86_64.rpm
rpm -ivh oracleasm-support-2.1.8-1.el5.x86_64.rpm 
 rpm -ivh oracleasmlib-2.0.4-1.el5.x86_64.rpm

oracleasm-2.6.18-164.el5-debuginfo-2.0.5-1.el5.x86_64
oracleasm-2.6.18-164.el5debug-2.0.5-1.el5.x86_64
oracleasm-2.6.18-164.el5xen-2.0.5-1.el5.x86_64


其中xen  需要 kernel-xen系统包支持 ,debug 需要kernel-debug系统包支持
oracleasm-2.6.18-164.el5xen-2.0.5-1.el5.x86_64
可以挂载上系统盘进行安装
4.检测硬件需求
4.1 内存推荐大于2G
   grep  MemTotal /proc/meminfo 
   uname -m 查看系统版本
   grep SwapTotal /proc/meminfo 查看交换分区的大小
   oracle 给定的ram和swap的关系如下
   ram        swap
   1-2g        1.5倍的ram
   2-16g       和ram相等
   16g以上     16g
   oracle 11g automatic memory management 自动内存管理 需要系统的共享内存(/dev/shm)要大于 memory_target 和memory_max_target这两个参数。以下是引用oracle联机文档的一句话

Starting with Oracle Database 11g, the Automatic Memory Management feature requires more shared memory (/dev/shm)and file descriptors. The shared memory should be sized to be at least the greater of MEMORY_MAX_TARGET and MEMORY_TARGET for each Oracle instance on that computer.

查看系统共享内存 df -h /dev/shm  通过修改系统内核参数修改共享内存的大小

4.2磁盘空间的需求
   df -h /tmp   查看临时目录的大小 ,oracle 推荐要至少1g的可用空间

At least 1 GB of disk space available in the /tmp directory
  df -h  软件空间企业版至少 4.3G  数据空间 至少1.7G
5.检查软件需求
  系统和内核需求  请参看oracle的联机文档
6.检查包的依赖关系 一下是联机文档的信息

  • The following or later version of packages for Asianux 3, Oracle Linux 5, and Red Hat Enterprise Linux 5 must be installed:

    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
  • 通过 rpm -qa| grep 包名 查看  通过 rpm -ivh 包  安装。确保上边的依赖包都已经安装上
    7.创建用户组和用户
       #groupadd oinstall
    

      #groupadd dba

      #useradd -m -g oinstall -G dba oracle

      #passwd oracle

    8.配置内核参数
    vi /etc/sysctl.conf 输入如下信息,具体信息含义请另行参考。主要是对共享内存和socket缓存的修改
    
    
    
    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 = 1048586
    
    输入此命令 来改变参数的当前值
    # /sbin/sysctl -p 参数p 默认引用的文件就是/etc/sysctl.conf
     
    9.配置用户资源限制
    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
    在/etc/pam.d/login 中 添加如下内容 
    

    session required /lib/security/pam_limits.so 10.因为selinux对oracle 会有影响 所以先事先关闭它。

     vi /etc/selinux/config  将SELINUX 设置为disable
    11.更改系统版本 ,因为oracle 10g 默认不支持centos5.4 所以在/etc/redhat-release 中把5改成4
    12.创建安装目录
    
    
    # mkdir -p /u01/app/
    # chown -R oracle:oinstall /u01/app/
    # chmod -R 775 /u01/app/
    13.修改用户的shell环境 首先切换到oracle 用户
      首先查看用户用的shell是那类
      echo $SHELL 我的是bash 因为喜欢bash vi .bash_profile 输入一下信息
       TMP=/tmp; export TMP
    TMPDIR=$TMP;export TMPDIR
    ORACLE_BASE=/u01/app/oracle;export ORACLE_BASE
    ORACLE_HOME=$ORACLE_BASE/product/10g/;export ORACLE_HOME
    ORACLE_SID=bybonio;export ORACLE_SID
    ORACLE_TERM=xterm; export ORACLE_TERM
    PATH=/usr/sbin:$PATH; export PATH
    PATH=$ORACLE_HOME/bin:$PATH; export PATH
    LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
    CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
    export CLASSPATH
    14.配置asm磁盘
     执行以下命令 /etc/init.d/oracleasm configure (配置后在/dev下有oracleasm设备)
    Default user to own the driver interface []: 输入所属用户 我用的oracle
    Default group to own the driver interface []: 输入用户组  dba
    Start Oracle ASM library driver on boot (y/n) [n]: y 系统启动的时候是不是启动asm 库
    Fix permissions of Oracle ASM disks on boot (y/n) [y]: y 系统启动的时候是不是启动asm磁盘
    一切执行成功后创建 asm磁盘
    /etc/init.d/oracleasm createdisk myasm1 /dev/VolGroup00/logvol02 
    其中myasm1是为asm磁盘起的名字 /dev/VolGroup00/logvol02是之前创建的逻辑卷
    /etc/init.d/oracleasm listdisks 会显示出asm磁盘
     
    15.切换到oracle 用户 到数据库软件目录运行runInstaller 此时显示的是英文 
     图形安装即可,没有安装数据库
    16.安装完数据库软件后 运行dbca  选择配置asm
      此时提示需要css服务才能配置 asm 
      提示运行./u01/app/oracle/product/10g/bin/localconfig add 命令 显示如下

    [root@bybon bin]# ./localconfig add /etc/oracle does not exist. Creating it now. Successfully accumulated necessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. Configuration for local CSS has been initialized

    Adding to inittab Startup will be queued to init within 90 seconds. Checking the status of new Oracle init process... Expecting the CRS daemons to be up within 600 seconds. CSS is active on these nodes.         bybon CSS is active on all nodes. Oracle CSS service is installed and running under init(1M) 这时我发现有个问题,在创建asm 磁盘组的时候不能显示出asm的磁盘 用命令/etc/init.d/oracleasm listdisks 也不能显示asm磁盘 查看asm日志 /var/log/oracleasm 出现了一些错误 disk myasm1 does not exist or is not instantiated Instantiating disk myasm1 oracleasm-read-label: unable to open device "/dev/dm-0" no such file 在网上查了好多资料,后来在群里询问了一下 可能是由于我吧lv 加入到了asm 造成的。可能linux 的lv 不支持asm 后来改为raw的分区 加入asm 就可以了 这点不太清楚 。到此 安装数据库软件和asm实例已经完成 。

    
    
    
    
    阅读(2583) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~