动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
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教程 ]的信息



本月文章推荐
.oracle 使用杂记一.
.神秘的 ORACLE DUAL.
.OCP(Oracle Certified Professio.
.oracle pro*c 学习笔记.
.如何选购Linux可以搭配的机器之电.
.一些常用的计划脚本(1).
.关于shared pool的深入探讨(6).
.Oracle TNSListener服务启动后自.
.如何找出按某字段大小排列的5条记.
.读书总结:Oracle 软件结构.
.导出/导入与字符集之间问题的解决.
.如何增加Oracle连接数.
.使用 SQL*Plus 访问数据库.
.Oracle9i中取得建表和索引的DDL语.
.Oracle8i和9i中PLSQL程序的不同运.
.Oracle数据库10g第2版终于破茧而.
.用PL/SQL和Java开发Oracle8 i应用.
.设置 XFree86 激活档 ( .xinitrc.
.Oracle数据仓库的分层管理器解决.
.用java实现ORACLE数据库的文件上.

在RedHat7.1上安装Oracle8.1.7

发表日期:2008-2-9 |



  在RedHat7.1上安装Oracle8.1.7的经验谈
  
  我在RedHat7.1上第一次安装Oracle8.1.7就成功了,呵呵,很幸运!后来有不少朋友请教我安装方法,我才知道原来有这么多问题,按照我的方法应该可以安装成功,我自己安装了不下10遍都是很顺利就成功了。总结一下自己的安装经验,也总结一下别人碰到的问题,希望能对其他人有一点点帮助。
  安装假设oracle系统文件放在/u01下,数据库文件放在/u02下,不安装OPS,不安装JServer,单数据库单实例。
  ORACLE_BASE=/u01/app/oracle
  ORACLE_HOME=/u01/app/oracle/prodUCt/8.1.7
  ORACLE_SID=orcl
  
  一、安装前的配置
  
  1、替换glibc
  Oracle8.1.7使用的是glibc2.1.3,而RedHat7.1是用的glibc2.2.2,不兼容,所以要替换glibc才能成功安装。
  首先要安装RedHat7.1安装光盘上的几个以compat开头的rpm包,它们是:
  compat-glibc-6.2-2.1.3.2.i386.rpm
  compat-egcs-objc-6.2-1.1.2.14.i386.rpm
  compat-egcs-6.2-1.1.2.14.i386.rpm
  compat-libs-6.2-3.i386.rpm
  可以把:
  compat-libstdc++-6.2-2.9.0.14.i386.rpm
  compat-egcs-c++-6.2-1.1.2.14.i386.rpm
  也安装上。
  因为这几个软件包之间有依靠关系,假如安装顺序不对,会报错的,无法安装。一般来说应该先安装第一张上的两个,再安装第二张上面的四个。
  假如这样做也报错,安装不上,可以先把这6个软件包拷贝到一个目录下,然后再一起安装,这样就不用怕它们之间的依靠关系,一定可以安装成功了。例如:
  rpm -ivh compat-glibc-6.2-2.1.3.2.i386.rpm compat-egcs-6.2-1.1.2.14.i386.rpm compat-libs-6.2-3.i386.rpm compat-egcs-c++-6.2-1.1.2.14.i386.rpm compat-egcs-objc-6.2-1.1.2.14.i386.rpm compat-libstdc++-6.2-2.9.0.14.i386.rpm
  
  2、创建用户和组
  groupadd dba
  useradd oracle -g dba
  passwd oracle
  Oracle安装文档上说,要创建两个组,oinstall和dba,oracle用户主属组是oinstall,从属组是dba,其实只用dba就好了,不要那么麻烦。
  chown -R oracle.dba /u01
  chown -R oracle.dba /u02
  
  3、设环境变量
  可以将要设的环境变量放在oracle用户主目录下的.bash_profile中,也可以放在/etc/profile中,对所有的用户可见,我建议放在/etc/profile中,因为凡是在本机运行的程序读写本机的Oracle数据库,一般都需要设Oracle的环境变量,否则无法连接数据库。
  我可以举一个例子:
  假如你的WEB Server,例如Apache,需要读写数据库,提供网页的动态内容,假设用PHP或者jsp,又或者Perl等等来写ServerAPI或者CGI,因为Apache是以root启动一个进程,这个进程再fork若干子进程以nobody用户运行,响应80端口的http请求,所以假如在root读不到Oracle环境变量,Web程序根本无法读写数据库。只要root读到oracle环境变量,fork子进程的时候,复制了父进程的数据空间,也继续了父进程的环境变量,所以可以读到oracle变量,就可以读写oracle数据库了。
  所以我这样设置,在/etc/profile中添加如下行:
  ORACLE_BASE=/u01/app/oracle
  ORACLE_HOME=/u01/app/oracle/product/8.1.7
  ORACLE_SID=orcl
  ORA_NLS=/u01/app/oracle/product/8.1.7/ocommon/nls/admin/data
  NLS_LANG="SIMPLIFIED CHINESE"
  CLASSPATH=.:/u01/app/oracle/product/8.1.7/jdbc/lib/classes111.zip
  LD_LIBRARY_PATH=/u01/app/oracle/product/8.1.7/lib
  PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/dbs:/etc
  eXPort ORACLE_BASE ORACLE_HOME ORACLE_SID ORA_NLS NLS_LANG LD_LIBRARY_PATH PATH
  
  其中$ORACLE_BASE,$ORACLE_HOME指定安装目录,$ORACLE_SID是oracle数据库的SID,$ORA_NLS是字符集目录,$NLS_LANG是字符集,$CLASSPATH是Java程序读写数据库需要的JDBC的class,前面加个点号是先搜当前目录的意思。
$LD_LIBRARY_PATH是Oracle的C库函数和头文件的位置,对于OCI8,PROC和JDBC的OCI连接是必须的。
  
  注销再登录,或者不用注销,执行下一行的命令,直接读一下/etc/profile
  . /etc/profile
  
  再 envgrep oracle 看看oracle的变量是否都设置正确。
  
  4、临时更改glibc
  将
  . /usr/i386-glibc21-Linux/bin/i386-glibc21-linux-env.sh
  export LD_ASSUME_KERNEL=2.2.5
  
  加入oracle主目录(/home/oracle)下的.bash_profile,注销再以oracle登录,或者不用注销,执行下一行的命令,直接读一下.bash_profile
  . /home/oracle/.bash_profile
  
  再看看是否已替换
  gcc -v
  替换之前是:
  Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
  gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-81)
  替换之后是:
  Reading specs from /usr/i386-glibc21-linux/lib/gcc-lib/i386-redhat-linux/2.96/specs
  gcc driver version 2.96 20000731 (Red Hat Linux 7.1 2.96-81) executing gcc version egcs-2.91.66
  
  5、修改内核参数
  Oracle数据库运行的时候,用共享内存来实现Oracle的SGA,所以要调整一下Linux的内核参数来适应Oracle的SGA的要求,这个方面到底要调整到多少才适合,可以参考Oracle官方的安装文档。一般而言,主要就是共享内存段最大尺寸要调整,Linux内核默认共享内存段最大尺寸是32M,假如Oracle SGA开的大于32M(一般商业运行,肯定大于32M),SGA就会分段,占据几个不连续的共享内存段,造成Oracle的性能下降。
  命令ipcs -al可以查看共享内存参数,命令ipcs查看共享内存使用情况。
  修改内核参数可以修改内核源码再重新编译内核,这个方法有点麻烦,关于共享内存的参数在源码目录下的include/linux/下的shm.h和sem.h文件中。
  另一个简单的办法是直接修改内核参数,即修改/proc下的文件,立即生效。
  可以修改/proc/sys/kernel下的shmmax和sem shmmax是以字节记的共享内存段的最大尺寸, shmmni是共享内存段的最大数量 shmmax是共享内存总共最大容量(shmmax*shmmni)
  sem是信号量参数,msgmax,msgmnb,msgmni是消息队列的参数。
  
  我改动如下:
  
  echo 134217728 > /proc/sys/kernel/shmmax (SGA最大为128M)
  echo -e "250 32000 100 128" > /proc/sys/kernel/sem
  (其实也不用改这项,只是将max ops per semop call改大了,这是Oracle的安装文档上写的,我就这么做了,不过我试过,不改也没事,其他都保持原来的,没有改)
  
  总结如下:改一项必须的shmmax,其他的我在使用过程中,参数都够大了,不需要再调整。
  
  二、安装过程
  
  1、runInstaller启动安装界面
  有的时候runInstaller,安装界面不出来,这主要还是因为Oracle的字符集设为了简体中文,但OS是英文的,所以有时候出不来,用Java写的程序经常出现字符集的问题。此时临时销毁$NLS_LANG变量,Java会用默认的字符集,就好了。所以:
  
  unset $NLS_LANG
  
  也可以试试
  
  unset $LANG
  × 其实dbassist也是有时候出不来的,这样做就可以出来了,但是netasst始终出不了,不清楚为什么,不过可以自己修改lisener.ora和tnsnames.ora,所以netasst也不是必须的。
  
  另一个可能的原因就是glibc没有替换好,我发现直到JDK1.3.1_01,才支持glibc2.2,之前的版本,包括JDK1.3.0都不支持glibc2.2,只要在glibc2.2下运行,就会出现没有任何反应,进程似乎死亡了一样的毛病,Oracle安装程序用的还是JRE1.1.8,所以只要glibc用的还是2.2版的,安装窗口总不会出来的。
  
  
  2、下面一路点击下一步,到填写安装oracle软件的属组的时候,填写dba就好了,然后提示用root运行$ORACLE_HOME/root.sh,以root登录运行。在/etc/下生成一个文件oraInst.loc
  
  3、到选择安装“服务器”,“网络治理工作站”,“客户端”的时候,选择“服务器” 安装好以后,可以再回到这个画面来选择别的没有安装的组件,也随时可以启动runInstaller来安装别的组件。
  另外有人提到没有安装PORC的选项,其实PROC是在“客户端”的选项里安装的。
  
  4、然后选择“定制安装”,不要选择典型安装,因为典型安装会安装Oracle Jserver,实际上不太用到Jserver,而且安装Jserver是在SGA里要启动一个Java虚拟机,非常消耗资源(Java的东西总是很吃资源的),而且安装的时候创建Jserver的过程非常的漫长,一度令我怀疑死机了。

  
  5、出现选择安装组件的列表,可以自己增删一些组件,我不需要oracle的Apache Server,预备自己从源码安装,所以就勾掉了。假如要安装Apache Server的选项话,要预先安装Java,并设置$JAVA_HOME变量,虽然要求的是jdk1.1.8,不过用jdk1.3也完全可以安装成功,运行Apache也没有什么问题,至于会不会因为jdk的版本不同导致一些程序运行结果的差异,我就没有测试过了。
  
  6、还是选择安装组件的列表这个界面,有个选择语言的按钮,增加“简体中文”
  
  7、询问是否创建数据库,“是”,添上安装数据库的SID,我的是“orcl”,数据库数据文件的存放目录,我的是“/u02“。
  
  8、开始安装Oracle,安装程序拷贝文件。
  有很多人说,拷贝文件完后,联接系统库函数的时候,出现make错误
上一篇:Oracle9i在RedHat7.1/7.2上的安装 人气:341
下一篇:Oracle Designer对Oracle的连接 人气:471
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-25 WikyBlog v1.7.0.1 多国语言版
2008-7-25 乐彼网上开店系统(56770 Eshop)
2008-7-25 赛特网站管理系统sitecms v3.6.0
2008-7-25 Modoer多功能点评系统 v1.0.1 Bu
2008-7-25 Shangducms Teamsuit! v1.1.0 开
2008-7-25 幻影动漫网视频系统(Ppdong) v1.
2008-7-25 acteecompany企业网站建设系统 v
2008-7-25 恒浪整合管理系统 ims v4.1 ACCE
2008-7-25 艺术图库系统 v1.0 beta
2008-7-19 UltraEdit 简体中文增强版 14.10
2008-7-19 CentOS 5.2 i386 LiveCD
2008-7-19 Snapture多功能相机 v1.4
2008-7-19 iAcces中文输入法 v1.0Build016
2008-7-19 Cookbook烹饪秘籍 v2.5
2008-7-19 苹果专用DVD转换工具 v1.1.59汉化
2008-7-19 Modem修复软件ZiPhone修改版04.0
2008-7-19 AgileMessenger即时通讯工具美化
2008-7-19 Sketches画图软件 v0.7b6破解版


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号