小白的一生

把青春奉献给了理想

用户操作
[即时聊天] [发私信] [加为好友]
luciferID:leo821031
30161次访问,排名4064(1),好友0人,关注者1人。
leo821031的文章
原创 55 篇
翻译 0 篇
转载 0 篇
评论 15 篇
leo821031的公告
年轻无所谓!支持开源!
最近评论
laoshou77:怎么struts2.0有点像jstl标签 了
shashawaityou:太伟大了
fei521sha:thanks
tancaiyi:谢谢,受益匪浅
大中华办公软件在线:大中华办公软件在线 http://www.gcoso.com 办公资源下载站
文章分类
收藏
    相册
    小白的一生
    JAVA技术网站
    CSDN
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 RedHat 9 下 Oracle 10g xe的安装收藏

    新一篇: Oracle 10g安装 出错 提示:Can't connect to X11 window  | 旧一篇: Hibernate 多表查询处理,涉及主键,外键关联,类型转换

    Oracle 10g xe 是Oracle 10g Express Edition 专门为小型用户提供的免费版本。 

    Oracle 10g 对软硬件的要求都非常的高,所以要玩转的话的花不少银子。首先来看看它对硬件的要求:内存512兆(建议1G),cpu 主频2.0G以上,硬盘转速7200转以上(建议使用scsi硬盘),依此条件,我看买台服务器才行。其次是软件要求:在oracle 官方的文档里,对于x86系列支持的操作系统只有3种(radhat ES/AS 2.1(x86),redhat ES/AS 3(x86),unitedlinux1.0(x86) ),如果只有redhat 9也是可以安装的,不过要麻烦一点点。当然oracle 10g需要更多的软件模块才能进行安装,这些软件模块我将在后面逐一说明。在本例中,使用RedHat ES 3(x86)作为操作平台,并且安装了xwindow。

      接下来,我们检查是否符合oracle 10g 的安装要求,以表格的形式列出。首先是硬件情况。以root登录系统,并且启动x-window.如果用下表命令输出的值大于或等于建议值,请

    资源需要:
    至少1024 MB物理内存
    1024-2048 需1.5倍的交互空间
    2048-8192 需1倍的交互空间
    8192-     需0.75倍的交互空间
    至少400 MB /tmp 临时目录空间
    oracle软件需要1.5 GB 到 3.5 GB 磁盘空间
    默认数据库需要1.2 GB
    查看系统资源相关语句:
    cat /etc/issue
    uname -r
    grep MemTotal /proc/meminfo
    grep SwapTotal /proc/meminfo
    grep "model name" /proc/cpuinfo
    free
    df -k /tmp
    df -k
    安装前的检查和准备工作:
    p4198954_21_linux.zip 在运行 runInstaller 之前打.
    rpm -ivh compat-oracle-rhel4-1.0-5.i386.rpm     (p4198954_21_linux.zip)
    (不打PATH也可以)
    安装 libaio-0.3.102-1.i386.rpm 和libaio-devel0.3.102-1.i386.rpm
      在Red Hat Enterprise Linux 介质的第三张 CD
      以 root 用户身份运行以下命令:
    rpm -ivh /mnt/cdrom/RedHat/RPMS/ libaio-0.3.102-1.i386.rpm

    创建数据库安装的准备工作:
    1,创建user/group;
    groupadd dba
    groupadd oinstall
    useradd oracle -g oinstall -G dba
    passwd oracle
    如果nobody用户不存在(id nobody命令查看),则创建:
    useradd nobody
    2,建立oracle安装文件夹(sample);
    mkdir -p /opt/oracle/product/10g
    mkdir /opt/oracle/database
    chown -R oracle.oinstall  /opt/oracle
    chmod 755 -R /opt/oracle
    2, 配置环境变量;
    要使用 Oracle 产品,应该或必须设置几个环境变量。
    如果您在同一服务器上安装了多个 Oracle 产品或数据库,则 ORACLE_HOME、ORACLE_SID 和 PATH 变量可能会更改。
    ORACLE_BASE 变量不应更改,并可以在需要时在您的登录配置文件中设置它。Oracle 提供了一个称作 oraenv 的实用程序来设置其他变量。
    对于数据库服务器,建议设置以下环境变量:
    使用Oracle用户登陆:
    su oracle
    vi ~/.bash_profile
    以下是配置文件的内容
    export ORACLE_BASE=/opt/oracle/
    export ORACLE_HOME=/opt/oracle/product/10g
    export ORACLE_SID=ge01
    export PATH=$ORACLE_HOME/bin:$PATH      
    # 安装好后再取消屏蔽这些环境变量设置
    # export TNS_ADMIN=$ORACLE_HOME/network/admin
    #export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
    #export LANG=AMERICAN_AMERICA.ZHS16GBK
    配置好后用 source .bash_profile 命令使配置生效   
    4, 设置系统参数;
    Oracle 数据库 10g 需要以下所示的内核参数设置。
    其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。
    切换到root用户:
    su root
    a) 修改/etc/sysctl.conf(vi /etc/sysctl.conf), 添加:

    kernel.shmmax = 2147483648
    kernel.shmmni = 4096
    kernel.shmall = 2097152
    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

    修改后运行"/sbin/sysctl -p"命令使得内核改变立即生效;

    B) 设置oracle对文件的要求:
    编辑文件:vi /etc/security/limits.conf 加入以下语句:
    oracle           soft    nproc           2047
    oracle           hard    nproc           16384
    oracle           soft    nofile          1024
    oracle           hard    nofile          65536
    编辑文件:vi /etc/pam.d/login 加入以下语句(可能应该加在最后一条规则之前):
    session    required     /lib/security/pam_limits.so

    解压缩Oracle10G的安装文件 :
    1. Oracle
    (1) 简化过程(以oracle登录,释放安装文件,使用更少的磁盘空间,速度更快)
    在/tmp下解压缩10201_database_linux32.zip:
    unzip 10201_database_linux32
    开始安装oracle
    (一)开始安装:
    1.以oracle用户登录系统,进行Oracle的安装:
    cd /tmp/database (或者你解压缩安装程序包的目录)
    ./runInstaller
    过一会儿就会出现Oracle的安装界面
    注意:
    1、选择advance install
    2、数据库home设置为/opt/oracle/product/10g
    3、数据库全局名称设置为ge01
    4、数据库字符集选Simplified Chinese ZHS16GBK
    2.其他用默认设置!
    注意:安装过程中会提示以root用户登陆执行一些脚本 ,执行后再按“ok”按钮继续安装。



    3、登陆并启动数据库的操作。
    [oracle@oracle oracle]$ lsnrctl start
    [oracle@oracle oracle]$ sqlplus /nolog
    SQL*Plus: Release 9.2.0.0 - Production on Sat Mar 12 22:58:53 2005
    Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
    SQL> connect / as sysdba
    Connected.
    SQL> shutdown immediate 关闭数据库 (OR "dbshut" command)
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup; 启动数据库
    ORACLE instance started.
    Total System Global Area 236000356 bytes
    Fixed Size 451684 bytes
    Variable Size 201326592 bytes
    Database Buffers 33554432 bytes
    Redo Buffers 667648 bytes
    Database mounted.
    Database opened.
    4, dbstart脚本修改
    数据库创建完成后,修改vi /etc/oratab,把orcl:/opt/oracle/oracle/product/10g:N那一行最后的N改成Y,
    然后执行dbstart启动数据库数据库可能无法启动,报告Can’t find init file …的错误,需要复制一个初始化文件:
    cp /opt/oracle/admin/ge01/pfile/init.ora.* /opt/oracle/product/10.2.0/dbs/initge01.ora
    重新执行dbstart就可以了。
    修改vi /opt/oracle/product/10g/bin/dbstart中ORACLE_HOME_LISTNER=/opt/oracle/oracle/product/10g/
    vi /etc/rc.local 加入下面一行 起动ORACLE ON system boot
    /opt/oracel/product/10g/bin/dbstart
    5. 编写启动脚本(OPTION)
    为了方便管理,可以写一个启动脚本ora10g:
    以root身份进入,编写以下脚本:
    #!/bin/bash
    #
    # chkconfig: 2345 91 19
    # description: starts the oracle listener and instance
    status() {
        pid=`ps -ef | grep ora_pmon | grep -v grep | awk '{print $8}'`
        if [ "X$pid" = "X" ]
        then
            echo "oracle10g is not running."
            exit 1
        else
            echo "oracle10g is running."
            exit 0
        fi
    }
    case "$1" in
        start)
            #startup the listener and instance
            echo -n "oracle begin to startup: "
            su - oracle -c "lsnrctl start"
            su - oracle -c dbstart
            echo "oracle10g started"
            ;;
        stop)
            # stop listener, apache and database
            echo -n "oracle begin to shutdown:"
            su - oracle -c "lsnrctl stop"
            su - oracle -c dbshut
            echo "oracle10g shutdowned"
            ;;
        reload|restart)
            $0 stop
            $0 start
            ;;
        'status')
            status
            ;;
         *)
            echo "Usage: ora10g [start|stop|reload|restart]"
            exit 1
    esac
    exit 0
    存为ora10g后,然后
    chmod a+x ora10g
    ln -s /opt/oracle/product/10.2.0/bin/ora10g /etc/rc.d/init.d/
    即可在以后以root身份运行/etc/rc.d/init.d/ora10g start |stop 来管oracle的启动和停止了。
    如果要将这个脚本加入到系统中使其可开机运行,那么要运行以下命令:
    chkconfig --level 345 ora10g on

    或者可在/etc/rc.d/rc.local中加入如下:
    su - oracle -c "lsnrctl start"
    su - oracle -c "dbstart"
    6, 关于数据库删除重新安装的问题:
    把ORACLE安装目录删除及/etc/ora*.*删除就行了
    #rm –f /etc/ora*.*
    7.修改Oracle10g数据库字符集
    SQL> connect sys/oracle as sysdba
    SQL> startup mount
    SQL> alter session set sql_trace=true;
    Session altered.
    SQL> alter system enable restricted session;
    System altered.
    SQL> alter system set job_queue_processes=0;
    System altered.
    SQL> alter system set aq_tm_processes=0;
    System altered.
    SQL> alter database open;
    Database altered.
    SQL> set linesize 120;


    SQL> alter database character set zhs16gbk;
    alter database character set zhs16gbk
    *
    ERROR at line 1:
    ORA-12712: new character set must be a superset of old character set
    SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk; # 使用INTERNAL_USE可以跳过超集的检查,ALTER DATABASE character set INTERNAL_USE
    Database altered.
    SQL> shutdown immediate;
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> STARTUP
    SQL> select name,value$ from props$ where name like '%NLS%';
    NLS_CHARACTERSET
    ZHS16GBK
    8. oracle database备份
    (1)vi bachupDb.sh
    #!/bin/sh
    #oracle用户下
    #crontab -e 增加 "35 4 * * * /home/oracle/dbbackup/backupDb.sh",保存后自动安装
    #或echo "35 4 * * * /home/oracle/dbbackup/backupDb.sh" > backupDb.cron
    #crontab backupDb.cron
    #############
    #@tip 修改为本机数据库home目录
    export ORACLE_HOME=/opt/oracle/product/10g
    export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
    # 注意字符集必须和数据库的字符集一致,以避免字符集转化失败
    export NLS_LANG=AMERICAN_AMERICA.zhs16gbk
    #@tip 125修改为要备份的oracle的ip地址的最后一段
    dmpfile="`echo ~/`dbbackup/gedb_`date +%w`.dmp"
    logfile="`echo ~/`dbbackup/gedb_`date +%w`.log"

    if [ -w $dmpfile ]
    then
      echo "rm -f $dmpfile"
      rm -f "$dmpfile"
    fi

    #@tip ip地址修改为要备份的oracle的主机地址
    exp USERID=gedb/gedb@10.248.1.5/ge01 file=$dmpfile log=$logfile  owner=gedb grants=y
      (2)copy bachupDb.sh 到slave oracle srever 相应目录,
         chown oracle.oinstall bachupDb.sh
         chmod 744 bachupDb.sh   
         vi bachupDb.sh 以符合安装情况
    (3)以oracle user role
        crontab -e
        35 4 * * * /home/oracle/dbbackup/backupDb.sh
    9. restore oracle backup
    su - oracle
    imp USERID=gedb/gedb file=gedb_6.dmp log=implogfile  commit=y  grants=y full=y

    发表于 @ 2007年03月13日 09:51:00|评论(loading...)|编辑

    新一篇: Oracle 10g安装 出错 提示:Can't connect to X11 window  | 旧一篇: Hibernate 多表查询处理,涉及主键,外键关联,类型转换

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © leo821031