当前位置:Linux教程 - RedHat - Oracle 8i release 3(version 8.1.7)在RedHat7.0下的安装

Oracle 8i release 3(version 8.1.7)在RedHat7.0下的安装



         陈啸(DarkKnight)
    1.系统软件需求

    A.X Windows
    可以使用gnome或KDE作为窗口管理器.
    B.开发包
    c,gcc,jdk(可选).其中glibc须为2.1.3版,尽管Oracle technet上的安装手册(Part No. A86017-02)
    上称2.1版以上,而发行记录(Part No. A87386-02)上更只字不提,但实际上RedHat7.0所包装的glibc
    2.1.96与目前Oracle technet上的Oracle发行版本8.1.7.01存在兼容性问题,比如创建数据库时执行
    startup nomount命令时产生ORA-03113错误;当安装Oracle HTTP[Apache] Server时需要jdk,据安装
    手册上应为SUN的JDK 1.2.2,但发行记录上确为IBM JDK 1.1.8(注1).
    C.执行文件
    在/usr/bin目录下必须有make,ar,ld,nm这些执行文件.
    D.Oracle安装包
    由Oracle technet(http://technet.oracle.com)上下载的Oracle8.1.7.0.1(linux81701.tar).

    2.安装步骤
    1)手工安装glibc2.1.3(root身份)
    ftp://ftp.kernel.org/pub/software/libs/glibc/hjl/sdk/2.1/下载i386-glibc21-linux.tar.gz.
    拷贝至本地目录(设目录名为/download),解开软件包

    cd /
    tar xfz /download/i386-glibc21-linux.tar.gz

    在/usr目录下产生i386-glibc-2.1-linux下级目录;
    隐藏/usr/bin目录下的gcc,cc和ld

    cd /usr/bin
    mkdir saved
    mv gcc cc ld saved
    ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc
    ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld

    隐藏/usr/lib目录下的libc.so,libdl.so,libm.so及libpthread.so

    cd /usr/lib
    mkdir saved
    mv libc.so libdl.so libm.so libpthread.so saved
    mv libc.a libdl.a libm.a libpthread.a saved

    2)安装JDK(root身份)
    将jdk122rc1-linux-i386.tar.gz软件包拷贝到/usr/local目录下并解开
    tar xvf jdk122rc1-linux-i386.tar.gz
    在/usr/local目录下生成jdk1.2.2目录,建立文件连接

    ln -s /usr/local/jdk1.2.2 /usr/local/java

    3)建立Oracle用户帐号和组(root身份)

    groupadd oinstall
    groupadd dba
    groupadd oper
    useradd oracle -g oinstall -G dba,oper
    passwd oracle(设置oracle帐号的口令)

    4)建立Oracle安装目录(root身份)

    cd /
    mkdir u01
    chown oracle.dba /u01
    chmod 775 /u01

    5)设置oracle用户环境(oracle身份)

    umask
    如果返回值不为022,则在.bash_profile文件中加入umask 022
    编辑/home/oracle目录下的.bash_profile文件(隐含文件),加入如下行:

    ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
    ORACLE_HOME=/u01/app/oracle/product/8.1.7; export ORACLE_HOME
    ORACLE_SID=orcl; export ORACLE_SID (注2)
    PATH=$PATH:/u01/app/oracle/product/8.1.7/bin; export PATH
    CLASSPATH=:/u01/app/oracle/product/8.1.7/jdbc/lib/classes111.zip; export CLASSPATH
    LD_LIBRARY_PATH=/u01/app/oracle/product/8.1.7/lib; export LD_LIBRARY_PATH

    退出oracle用户身份

    logout

    重新以oracle用户身份登录,检查环境参数

    env

    6)解包并运行Oracle Universal Installer
    以root身份登录,将Oracle安装包linux81701.tar拷贝至/usr/src目录并解包

    tar xvf linux81701.tar
    在/usr/src目录下生成Disk1子目录,退出.
    以oracle用户身份登录,运行Oracle Universal Installer

    cd /usr/src/Disk1
    ./runInstaller

    此时会出现图形窗口,单击Next按钮,检查Source path是否为/usr/src/Disk1/stage/products.jar,
    而目的路径是否为上文中定义的$ORACLE_HOME环境值,再单击Next按钮;
    在Unix Group Name中填入oinstall,单击Next按钮;
    此时会弹出一个对话框提示需要运行orainstRoot.sh脚本,
    打开新的terminal窗口

    su root
    (输入root口令)
    cd $ORACLE_HOME
    ./orainstRoot.sh

    暂时不关闭此窗口;
    回到刚才的弹出对话框,单击Retry按钮;
    选择Oracle 8i Enterprise Edition 8.1.7.0.1,单击Next按钮;
    选择Typical,单击Next按钮;
    此时安装程序提示输入global database name(全局数据库名),由用户自己定义;
    检查ORACLE_SID是否与上文中环境参数中定义的值一致,单击Next按钮;
    接下来提示输入数据库文件的位置,可以输入/u01,单击Next按钮;
    此时安装程序提示确定JDK home directory,检查是否为/usr/local/java,单击Next按钮;
    然后出现汇总窗口,单击Install按钮,软件正式开始安装;

    当文件拷贝连接完成后,会弹出对话框要求运行root.sh,
    回到刚才打开的terminal窗口,仍以root身份运行

    cd $ORACLE_HOME
    ./root.sh

    提示输入Path to your local bin directory时按Enter键即可;

    exit (退出root权限)
    exit (关闭terminal窗口)

    返回对话框并单击OK按钮;

    Oracle Net8 Configuration开始运行,选择"Perform typical configuration"并单击Next按钮;
    Database Configuration Assistant开始运行,当数据库创建完成时单击OK按钮;
    Oracle会启动7777端口的webserver,无需干预;
    出现End of Installation屏幕时单击exit按钮,安装过程结束.

    3.试运行
    在terminal中运行
    1)启动TNS Listener服务进程

    lsnrctl start

    2)加载并运行数据库实例

    svrmgrl
    SVRMGR>connect internal
    SVRMGR>connected.
    SVRMGR>startup
    ......
    SVRMGR>quit

    3)查询示例数据库

    sqlplus scott/tiger@orcl
    select * from emp;
    ......

    注1 : 在此Oracle的官方文档存在矛盾,笔者使用的是JDK 1.2.2(由ftp://ftp.linuxforum.net上下
    载的jdk122rc1-linux-i386.tar.gz),安装后可以使用.

    注2 : ORACLE_SID即为Oracle数据库实例的SID,此处由用户自行定义,本文实例为orcl.

    注3 : 如果使用除美国英语以外的语种,必须加入ORA_NLS33和NLS_LANG参数,NLS_LANG值具体如下
    american (美国英语)
    arabic (阿拉伯语)
    "brazilian portugese" (巴西葡萄牙语)
    frc (加拿大法语)
    czech (捷克语)
    danish (丹麦语)
    dutch (荷兰语)
    finnish (芬兰语)
    french (法语)
    german (德语)
    hungarian (匈牙利语)
    is (冰岛语)
    italian (意大利语)
    japanese (日语)
    korean (韩语)
    lt (立陶宛语)
    esm (墨西哥西班牙语)
    norweigan (挪威语)
    polish (波兰语)
    portugese (葡萄牙语)
    russian (俄语)
    "simplified chinese" (简化汉语)
    slovak (斯洛伐克语)
    swedish (瑞典语)
    th (泰国语)
    "traditional chinese" (传统汉语)
    turkish (土耳其语)


    发布人:Crystal 来自:中国Linux论坛