redhat 5+oracle

来源:百度文库 编辑:神马文学网 时间:2024/05/23 21:56:12
1.在安装数据库之前,建议最好先把jdk配好。

  2.然后就是一些rh5的安装包装上,我就是在这个上面吃的亏,在网上说要安装好什么什么包,当你装好之后,安装数据库时仍然出错,关键是他们没有说全,这也是为什么我装了三天的原因。

    0)查询所需安装包是否完整
      # rpm -q gcc make binutils openmotif setarch libXp

    1)插入redhat 5安装光盘,以文件夹形式打开,搜索全部以rpm结尾的文件

     2)找出第0步所缺少的文件,还要找出所有的以compat开头的文件,全部装上他们。有的装不上需要依赖其它包的,那就跳过,等装完能装的了,再来装这些剩下的就可以了。有几个还是装不上就不用装了,说明他们用不上(这是什么逻辑?)。但是libXp一定要装,就算光盘上没有或装不上,也要上网上下一个。
    PS:光盘上有一个libXp-devel-*.rpm的,你装一下会装不上,他会告诉所需要的依赖包libXp-*.rpm,根据它提示的版本上网上找一个。

注:以 root 用户身份登录后执行下命令

  3.设置交换分区,最好是大于或等于你的内存。具体情况是,小于2G的,swap设为你内存的2倍。内存为2~4G的设为1~2倍。后面的我就莫试过了,需要的话可以上网查。如果swap小于你的内存,oracle安装检测时,好像会报错的。我的内存是3G,已有swap为2G,所以只要再加2G的swap就可以了.

    1)# grep MemTotal /proc/meminfo   //查看内存
      # grep SwapTotal /proc/meminfo  //查看交换空间

    2)如果交换空间不够,该咋办呢?请往下看.
      # cd /usr      //这里建议在/usr里建swap,你也可以自己决定,最好是个单独的分区
      # dd if=/dev/zero of=swap bs=1024 count=2097152 
      //bs是设定块的大小,这里的意思就是1块的大小是1024,count是由1024*2048(2G)得来的
      # /sbin/mkswap swap     //创建交换文件
      # /sbin/swapon swap     //激活当前swap文件
      # /sbin/swapon -s       //查看swap是否激活
      # vi /etc/fstab         //编辑fstab文件,让开机时自动启动­,在行尾加上­如下语句
      /var/swapfile swap swap defaults 0 0

  4.修改参数,这里我就不多说了,网上这样的介绍多的是.
    修改完内核参数后不必重启系统。其中给出的是最小值,如果系统使
用的值较大,就不要更改它。
   
    1)#vi /etc/sysctl.conf
      在该文件末尾加入如下内容:
     
      kernel.shmmni = 4096
      kernel.sem = 250 32000 100 128
      fs.file-max = 65536
      net.ipv4.ip_local_port_range = 1024 65000
      net.core.rmem_default=262144
      net.core.rmem_max=262144
      net.core.wmem_default=262144
      net.core.wmem_max=262144
      保存后,再运行sysctl -p应用以上参数

    2)# vi /etc/security/limits.conf  最后一行添加如下内容:
      #use for oracle
      * soft nproc 2047
      * hard nproc 16384
      * soft nofile 1024
      * hard nofile 65536

    3)# vi /etc/pam.d/login 行尾添加以下内容
      #use for oracle
      session required pam_limits.so

    4)# vi /etc/selinux/config 更改以下内容
      SELINUX=disabled    //我认为是关闭LINUX的保护程序

    5)修改/etc/redhat-release文件,这样安装的时候能通过,oracle10不支付rh5
        # vi /etc/redhat-release
        改为:
             #Red Hat Enterprise Linux Server release 5 (Tikanga)
             Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
             //装好oracle后还要改回来的

    5.建立安装Oracle需要的用户,组,及目录
      安装oracle的目录建议安装在一个单独的分区或者磁盘上。
      1)创建组:
        # /usr/sbin/groupadd oinstall  
        # /usr/sbin/groupadd dba
      2)创建oracle用户:
        # /usr/sbin/useradd -m -g oinstall -G dba oracle
      3)设置用户密码:
        # passwd oracle  //这里随你,我这样设的后果就是它会说这是一个糟糕的密码
      4)# mkdir -p /u01/app/oracle     //软件安装位置
      5)# mkdir -p /u02/oradata        //数据文件存放位置
      6)# chown -R oracle:oinstall /u01 
      7)# chown -R oracle:oinstall /u01/app/oracle/ /u02/oradata/
      8)# chmod -R 775 /u01/app/oracle/ /u02/oradata/
        //以上三行是赋给用户文件的使用权限

    6.配置oracle用户的语言版本和环境变量
      注意:下面的操作,用oracle用户登陆执行,必须是界面登陆,不能是终端切换

      1)$ export LC_CTYPE=zh_CN.GB2312-8 0 0 
        //这是避免安装软件时出现乱码,可根据安装时的错误提示更改编码格式

      2)接下来,编辑/home/oracle目录下的.bash_profile文件:
        $ vi /home/oracle/.bash_profile
        export ORACLE_BASE=/u01/app/oracle
        export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
        export ORACLE_HOME_LISTNER=$ORACLE_BASE/product/10.2.0/db_1
        export ORACLE_SID=oracle
        export PATH=$HOME/bin:$ORACLE_HOME/bin:${PATH}
        export ORACLE_TERM=xterm
        export TNS_ADMIN=$ORACLE_HOME/network/admin
        export ORA_NLS10=$ORACLE_HOME/nls/data
        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 THREADS_FLAG=native
        export TEMP=/app/temp
        export TMPDIR=/app/temp
        export LANG=EN_US               
        unset USERNAME
        umask 022

    准备工作完毕,现在是办正事的时候了

    7.安装Oracle 10g
      把下载好的10201_database_linux32.zip,放在/opt目录下,
      在终端切换到root用户,通过下列命令解压,得到database文件夹
      # unzip 10201_database_linux32.zip
      切回oracle用户到/opt/database目录下执行安装:
      0)$ cd /opt/database
        $ export DISPLAY=":0.0"
        $ ./runInstaller
        进入Oracle10g安装界面
      1)选择安装类型,这里选择高级安装(最下面的)。
      2)指定证书存放目录。/u01/app/oracle/oraInventory
      3)选择安装的数据库类型及oracle所支持的语言,这里选择企业版,
        语言选择English和Simplified Chinese。
       (选择Enterprise Edition,语言要简体中文的)
      4)指定oracle环境变量,安装路径。/u01/app/oracle/product/10.2.0/db_1
      5)Oracle开始安装前进行检查,我这报了一个Warning不过没事,继续
      6)选择配置选项。(第一个,安装数据库)
      7)选择创建的数据库模式。(第一个,通用模式)
      8)指定数据库配置的相关选项(SID:最好用默认的,字符集:第一个Unicode UTF-8)。
      9)选择数据库管理选项。(默认第二个,下一步)
      10)指定数据库存储选项。(/u02/oradata)
      11)指定数据库备份回复选项。(选一个,大家随意)
      12)指定数据库相关用户密码。勾上所有用户共用一个密码选项,输入密码,下一步
      13)显示安装概要。    (next吧~~)
      14)开始安装。        (等吧~~)
      15)安装成功后会弹出一个窗口,用root权限执行里面的命令,一定要执行,
         别大意了,点OK。
      16)安装结束。
      17)安装完成后,恢复语言环境以及版本信息
         $ export LC_CTYPE=zh_CN.UTF-8

以下root用户权限:

        # vi /etc/redhat-release  
         改为:
           Red Hat Enterprise Linux Server release 5 (Tikanga)
           #Red Hat Enterprise Linux AS release 4 (Nahant Update 4)

    8.启动数据库与监听
      1)使用root用户修改/etc/oratab文件:
        # vi /etc/oratab
       修改配置文件:
       SID名字:/Oracle/app/product/10.2.0/db_1:N为
       oracle:/Oracle/app/product/10.2.0/db_1:Y
      2)修改$Oracle_HOME/bin/dbstart文件:
        # vi $Oracle_HOME/bin/dbstart
        把其中的Oracle_HOME_LISTNER=什么东西,注释掉,
        加上Oracle_HOME_LISTNER=$Oracle_HOME

      3)修改/增加配置文件,起名字叫oracle,添加下面的script
        # vi /etc/rc.d/init.d/oracle
===== Script ====
#!/bin/bash
#
# chkconfig: 35 95 1
# description: init script to start/stop oracle database 10g, TNS listener, EMS

# match these values to your environment:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_TERM=xterm
export PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_SID=oracle
export DISPLAY=localhost:0
export ORACLE_USER=oracle

# see how we are called:
case $1 in
        start)
        su - "$ORACLE_USER"<        lsnrctl start
        sqlplus /nolog<        connect / as sysdba
        startup
EOS
    emctl start dbconsole
EOO
touch /var/lock/subsys/$scriptname
    ;;
    stop)
    su - "$ORACLE_USER"<    lsnrctl stop
    sqlplus /nolog<    connect / as sysdba
    shutdown immediate
EOS
    emctl stop dbconsole
EOO
rm -f /var/lock/subsys/scriptname
    ;;
    *)
    echo "Usage: $0 {start|stop}"
    ;;
esac
===========end of script==============
    4)授权 :
      # chown root.root /etc/rc.d/init.d/oracle
    5)修改文件属性:
      # chmod 755 /etc/rc.d/init.d/oracle
    6)启动/关闭服务:
      # service oracle start
      # service oracle stop

    附:卸载(简单,全是rm)
    1)使用SQL*PLUS停止数据库
      $ sqlplus /nolog
      SQL> connect / as sysdba
      SQL> shutdown [immediate]   //方括号内为可选
      SQL> exit

    2)停止Listener
      $ lsnrctl stop

    3)停止HTTP服务
      $ $ORACLE_HOME/Apache/Apache/bin/apachectl stop  //有些可能没有

    4)用su或者重新登录到root
      (1)运行
         # $ORACLE_HOME/bin/localconfig delete
      (2)# rm -rf $ORACLE_BASE/*
      (3)# rm -f /etc/oraInst.loc /etc/oratab
      (4)# rm -rf /etc/oracle
      (5)# rm -f /etc/inittab.cssd
      (6)# rm -f /usr/local/bin/coraenv
      (7)# rm -f /usr/local/bin/dbhome
      (8)# rm -f /usr/local/bin/oraenv
      (9)删除oracle用户和组。
         # userdel –r oracle
         # groupdel oinstall
         # groupdel dba
      (10)将启动服务删除
         # chkconfig --del dbora    //有些可能没有