网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.数据库加速解决方案.
.Oracle 10G First Release的新特.
.在Oracle中查看各个表、表空间占.
.如何防止某个关键文件被修改?.
.Oracle的几种字符类型的区别与使.
.spfile全攻略.
.Oracle FAQ 之备份与恢复篇.
.利用散列法来处理大的静态统一表.
.Oracle案例详细分析:Job任务停止.
.上帝的神谕——ORACLE公司传奇.
.ORACLE数据库开发经验总结.
.如何限制用户的最小密码长度.
.由浅入深讲解Oracle数据库的备份.
.如何掌握 Oracle 中的时间间隔型.
.Oracle 10g R2ORA-3136 错误解决.
.oracle数据库文件中的导入\导出(.
.说一说如何配置Oracle的MTS Part1.
.深入分析Oracle数据库日志文件(.
.ORACLE9I中外部表的使用.
.oracle用存储过程加密一段字符串.

在 Red Hat Linux 9.0 上安装 Oracle 8i

发表日期:2008-2-9


关于 Oracle 安装的讨论已经有很多了,可是在实践中你还是总会碰到某些麻烦。 本文讨论的环境基于 Redhat Linux 9.0.93,Oracle 的版本号为 8.1.7.0.1。

下载软件

假设你已经有了一台跑着 Redhat 的机器,并且它满足 Oracle 8i 对硬件的相关要求,并且具有网络连接,下面就下载其他所需的软件。首先在 OTN 下载 linux81701.tar 和 glibc-2.1.3-stubs.tar.gz,另外还需要:
  • i386-glibc-2.1-linux.tar.gz
  • binutils-2.10.91.0.2-3.i386.rpm(Redhat 自带的是 binutils-2.13.90.0.18-9.i386.rpm)
  • jdk118_v3-glibc-2.1.3.tar.bz2
因为 Oracle 自带了 JRE 1.1.8,所以不用单独安装,假设以上所述软件都放在 /tmp 目录。

安装glibc、JDK、和 binutils

sucd /tar zxvf /tmp/i386-glibc-2.1-linux.tar.gz cd /usr/binmkdir savedmv gcc cc ld savedln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gccln -s gcc ccln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld cd /usr/libmkdir savedmv libc.so libdl.so libm.so libpthread.so savedmv libc.a libdl.a libm.a libpthread.a saved cd /usr/Javatar jxvf /tmp/jdk118_v3-glibc-2.1.3.tar.bz2ln -s jdk118_v3 /usr/local/java rpm -Uvh --force --nodeps binutils-2.10.91.0.2-3.i386.rpm

创建用户和组

groupadd oinstallgroupadd dbagroupadd operuseradd -d /oracle -g oinstall -G dba,oper oraclepasswd oraclechown -R oracle.dba /oraclechmod 750 /oracle

预备安装

vi /oracle/.bash_profile
修改为如下内容: # .bash_profile # Get the aliases and functionsif [ -f ~/.bashrc ]; then. ~/.bashrcfi # User specific environment and startup programsunset USERNAMEumask 022eXPort EDITOR=viexport TERM=xtermexport TMPDIR=/tmp # Setup installation environmentexport ORACLE_SID=orclexport ORACLE_BASE=/oracleexport ORACLE_HOME=$ORACLE_BASE/prodUCt/8.1.7export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/i386-glibc-2.1-linu x/i396-glibc-linux/lib:/lib:/usr/lib:/lib:/usr/local/libexport SHLIB_PATH=$ORACLE_HOME/lib:/usr/lib:/lib:/usr/local/libexport LIBPATH=$ORACLE_HOME/lib:/usr/lib:/lib:/usr/local/libexport TNS_ADMIN=$ORACLE_HOME/network/adminexport NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataexport ORACLE_OWNER=oracleexport ORACLE_TERM=xtermexport GCC_EXEC_PREFIX=/usr/i386-glibc21-linux/lib/gcc-lib/export LD_ASSUME_KERNEL=2.4export JAVA_HOME=/usr/local/javaexport CLASSPATH=$ORACLE_HOME/jdbc/lib/classes12.zip:$ORACLE_HOM E/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib:.su oracle. .bash_profileexport LANG=encd /tmptar xvf linux81701.tar
其中 export LANG=en 是为了防止界面黑做一团。

开始安装

./Disk1/runInstaller 点击 Next;在 UNIX Group Name 里输入 oinstall;出现一个提示框要求执行 orainstRoot.sh,这时另外打开一个终端: sucd $ORACLE_HOME./orainstRoot.sh 回到 GUI,按 Retry;选择安装 Enterprise Edition;选择典型安装;选择使用一个已经存在的 repository;选择 JDK 的位置;问是否要新建一个数据库,不用;继续,等待一段时间;出现一个提示框要求执行 root.sh;回到终端: vi root.sh 按下列要求修改:第98行,把 SED=/usr/local/bin/sed 改为 SED=/bin/sed;第102行,把 RMF=/bin/rm –f 改为 RMF="/bin/rm -f";第156行,把 RUID=`/usr/bin/id$AWK -F\( '{print }'$AWK -F\) '{print }` 改为 RUID=`/usr/bin/id$AWK -F\( '{print }'$AWK -F\) '{print }'`。 ./root.sh 回一次车;回到 GUI,按 OK。

处理错误

出现一个提示框,说 Error in invoking target relink of makefile /oracle/product/8.1.7/precomp/lib/ins_precomp.mk 或者 Error in invoking target relink of makefile /oracle/product/8.1.7/rdbms/lib/ins_rdbms.mk,回到终端: exitcd $ORACLE_HOMEtar zxvf /tmp/glibc-2.1.3-stubs.tar.gz./setup_stubs.sh
链接工作完成后,回到 GUI,按 Retry;等待,直到安装完成;完成后自动启动的 Net8 配置向导没有反应,kill 之。

恢复其他软件

surpm -e --nodeps bintutils-2.10.91.0.2-3rpm -ivh /mnt/cdrom/Redhat/RPMS/binutils-2.13.90.0.18-9.i386.rpmcd /usr/localrm javaln -s /usr/java/j2sdk1.4.2_01 javacd /usr/binrm gcc cc ldmv ./saved/* .rmdir savedcd /usr/libmv ./saved/* .rmdir saved
然后把 oracle 用户环境变量 LD_LIBRARY_PATH 中的 glibc 的部分删去。

创建数据库

exitcd $ORACLE_HOME/binunset LANGunset NLS_LANG./dbassist 选择创建数据库;定制;多用途;下一步;共享服务器模式;去掉所有选项(创建 JServer 的时间巨长);设置全局数据库名和 SID,假设全局数据库名为 testdb,SID 为 orcl;更改字符集:字符集为 UTF8、国家字符集为 ZHS16GBK;六次下一步;完成。

配置 Net8

./netca 使用 netca 是因为 netasst 总是没有反应,让我们鄙视它吧。选择监听程序配置;添加;监听程序名使用默认的 LISTENER;三次下一步。 上面步骤即是对 $ORACLE_HOME/network/admin/listener.ora 的编辑: # copyright (c) 1997 by the Oracle Corporation# LISTENER = (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521)) (ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC))) SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=testdb) (SID_NAME=orcl) (ORACLE_HOME=/oracle/product/8.1.7) ) )
其中 GLOBAL_DBNAME、SID_NAME、和 ORACLE_HOME 随实际情况不同而不同。

手工启动数据库和监听

vi /etc/oratab 把最后的 N 改成 Y。 ./dbstart./lsnrctl start

设置服务

sucd /etc/init.dvi oracle#!/bin/bash## Startup script for Oracle and listener## chkconfig: 35 99 1# description: Oracle 8.1.7.0.1 # Setup environment for script execution.. /oracle/.bash_profile case "" in start) echo "Starting Oracle database(s) listed in /etc/oratab ..." sleep 2 su - oracle -c "$ORACLE_HOME/bin/dbstart" echo "Starting TNS listener..." sleep 2 su - oracle -c "$ORACLE_HOME/bin/lsnrctl start" touch /var/lock/subsys/oracle ;; stop) echo "Stopping TNS listener..." sleep 2 su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop" echo "Stopping Oracle databases(s) listed in /etc/oratab ..." sleep 2 su - oracle -c "$ORACLE_HOME/bin/dbshut" rm -f /var/lock/subsys/oracle ;; status) ps -ax grep -e ora_ -e tnslsnr ;; *) echo "Usage: oracle " exit 1esac exit 0chmod 700 /etc/init.d/oracle/sbin/chkconfig --add oracle

使用启动脚本启动和关闭

/etc/init.d/oracle start/etc/init.d/oracle stop
上一篇:调用linux日期函数,实现每天自动生成一个oracle备份 人气:1232
下一篇:Oracle常见错误代码的分析与解决<转> 人气:594
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐