oracle9i 2000 年 10 月在 oracle open world 上发布,为 oracle 数据库、应用服务器和开发工具引进了许多新功能。oracle9i是业界第一个完整、简单的用于互联网的新一代智能化的、协作各种应用的软件基础架构。oracle9i 实际上是指 oracle9i database, oracle9i application server 和oracle9i developer suite的完整集成。随着软件逐渐开始转变为一种托管服务( hosted services), 具有inte.net上的高伸缩性能的、智能化的、和可靠的oracle9i 将成为高质量的电子商务服务实现的关键软件。
本文将介绍oracle database 9i在linux下的安装过程,如果你是有过安装oracle的经验本安装过程可以权当快速安装手册;如果你以前从未在linux下安装过oracle数据库,那我们就从这篇文章开始熟悉oracle的安装过程。
系统要求:
以下的系统要求适用于典型的oracle安装和创建简单数据库的方式。
内存:
安装oralce 9i软件至少需要512m内存,用以下命令可以查看机子的内存大小:
grep memtotal /proc/meminfo
memtotal: 900252 kb
900252kb就是你系统的内存大小。
交换区:
交换区的大小一般要求是内存的两倍,至少要求达到400m以上,当然是越大越好,用以下的命令可以查看系统交换区的大小:
/sbin/swapon -s
filename type size used priority
/dev/sda6 partition 105221 686976 -1
其中105221就是系统交换区的大小。
光驱:
如果你使用光盘安装oracle9i则你的机子上需要8速以上的cdrom,如果你是下载了oracle9i的包文件,则不需要使用的cdrom。
硬盘空间:
安装oracle9i数据库至少要有2.5gb以上的剩余空间。
临时硬盘空间:
oracle安装程序在安装过程中需要400m以上的临时硬盘空间,建议使用/tmp文件夹作为零时文件夹,如果/tmp文件没有足够的硬盘,可以新创建一个文件夹作为安装的临时目录,之后设置环境变量temp和tmpdir指向相应的位置,例如:
使用bash
mkdir /home/temp
temp=/home/temp ; export temp
tmpdir=/home/temp ; export tmpdir
使用csh
mkdir /home/temp
setenv temp /home/temp
setenv tmpdir /home/temp
操作系统:
oracle公司官方公布的资料指出oracle 9i只在安装sususe 7.1, 内核 2.4.4 和glibc2.2的系统上测试通过,经过本人的测试,oracle在linux mandrake release 8.0,内核2.4.3-20和glibc-2.2.2的版本上也可以顺利安装,本文将以linux mandrake8.0为例介绍oracle9i的安装过程。
虚拟x-windows软件:
这个软件不是必要的!所谓虚拟x-windows软件指的是可在远程终端允许服务器x-windows的虚拟软件,现在流行的x-windows软件有exceed、x-win32等软件,如果你嫌在控制台安装oracle系统麻烦,可以使用虚拟x-windows软件在远程终端在图形界面下安装oralce9i,本文将以x-win32 5.0为例介绍用虚拟x-windows安装oracle9i的过程。
jdk
如果你要安装oracle http server还需要用到blackdown的jdk1.3.1,请到以下地址下载ftp://ftp.progsoc.uts.edu.au/pub/linux/java/jdk-1.3.0/i386/rc1/j2sdk-1.3.0-rc1-linux-i386.tar.bz2
配置内核参数
oracle9i使用linux的共享内存、交换区等资源进行工作,如果你的内核参数设置不能满足oracle的要求,那在安装oracel9i或使用过程就会频频出现问题,因此配置系统内核的参数就显得尤为重要和关键了。
内核参数的配置一般在/proc文件夹下配置:
1. 以root用户允许以下命令;
2. 进入目录/proc/sys/kernel;
3. 用cat命令或more命令查看semaphore当前参数的值:
cat sem
命令运行后将会出现如下的结果:
250 32000 32 128
其中, 250 是参数semmsl的值,32000是参数semmns的值, 32是参数semopm的值,而128则是参数semmni的值。
4. 用以下的命令可以对上述参数进行修改
echo semmsl_value semmns_value semopm_value semmni_value > sem
其中semmsl_value、semmns_value、semopm_value、semmni_value分别用相应的值进行替换,并且这些值的顺序不能调换
5. 设置共享内存大小,共享内存大小一般设为物理内存的一半,在这里我们假设物理内存为512m则共享内存的值4294967295以此类推,如果你的物理内存是1g则这里的值则是8589934590:
echo 4294967295 > shmmax
添加用户
oracle在安装和使用中需要用特定用户(非root用户),按照oracle的标准说明是需要添加三个专门用户和用户组,为了简便大家的安装和使用我们把oracle的安装和使用归到一个特定用户来完成。
首先创建oracle用户组,我们架设这个用户组命名为dba:
以root用户登陆系统;
运行groupadd dba命令添加dba用户组;
添加oracle用户:
以root用户登陆系统;
运行useradd –g dba –p password –d /oracle –s /bin/bash oracle
运行后系统创建了一个属于dba用户组的用户oracle,密码为password,主目录为/oracle使用bash
这个用户将作为系统的安装和使用指定用户,因此要妥善保存好!
创建安装点(mount point)
oracle9i的典型安装需要至少两个安装点:一个安装基本的运行程序,要求至少要有850m的硬盘空间;一个为存放数据库,至少要求有450m的硬盘空间。为了简化安装我们可以把运行程序和数据库装在同一个安装点下。
在你的文件系统上找到有足够空间的分区,在分区下创建文件夹,我们假设这个文件夹为/oracle。
配置系统环境变量
很多网友安装oracle失败都是因为环境变量没有配置正确,环境变量的配置直接影响到以后oracle9i的安装和配置,在配置的时候要尤为小心!
配置x-windows变量
确认oracle9i在安装过程中是否使用本地x-windows安装还是远程虚拟x-windows安装,如果需要远程x-windows安装,则需要配置display变量,这个变量用于告诉系统屏幕的图形将输出到什么位置,默认情况下是本机,如果你使用虚拟x-windows进行安装,则在这里指明远程终端的显示情况,比如你远程终端的ip地址是xxx.xxx.xxx.xxx则display的变量应设为“xxx.xxx.xxx.xxx:0”后面的“:0”表示该终端的第一个显示器。
确定安装临时目录
前面我们提到过oracle9i的安装需要一个临时的可写空间,我们在这里把/tmp作为临时的可写目录。如果你不是使用/tmp作为临时可写目录则需要配置相应的值tmpdir=/path。
配置oracle的环境变量
下面提供一个例子可以供大家参照使用
export display="192.9.200.24:0.0"
export bash_env=$home/.bashrc
oracle_home=/oracle/product/9.0.1; export oracle_home
oracle_sid=oracle; export oracle_sid
oracle_term=xterm; export oracle_term
tns_admin=/home/oracle/config/9.0.1; export tns_admin
nls_lang=american_america.zhs16gbk; export nls_lang
ora_nls33=$oracle_home/ocommon/nls/admin/data; export ora_nls33
ld_library_path=$oracle_home/lib;export ld_library_path
path=$path:/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:
/usr/ccs/bin:/usr/openwin
path=$path:/opt/local/bin:/opt/nscpnav/bin:$oracle_home/bin
path=$path:/usr/local/samba/bin:/usr/ucb:
export path
classpath=$oracle_home/jre:$oracle_home/jlib:
$oracle_home/rdbms/jlib
classpath=$classpath:$oracle_home.network/jlib
tmpdir=/tmp;export tmpdir
umask 022
其中:
oracle_home为系统软件的安装目录;
oracle_sid 为数据库的sid,这里可以自行设置;
nls_lang 为数据库的字符集,为了保证数据库能够输出输入数据库,我们需要在这里把字符集设为american_america.zhs16gbk,其中american_america英文字符集,zhs16gbk为中文字符集。
以oracle用户登陆系统,
vi $home/.bash_profile
把以上环境变量的设置粘贴到文件中,确认相应的内容并修改,存盘退出。
重新登陆oracle用户
使用setmore命令查看oracle用户的环境变量是否生效
classpath=/oracle/product/9.0.1/jre:/oracle/product/9.0.1/jlib:
/oracle/product/9.0.1/rdbms/jlib:
/oracle/product/9.0.1.network/jlib
display=192.9.200.24:0.0
ld_library_path=/oracle/product/9.0.1/lib:/lib:/usr/lib:
nls_lang=american_america.zhs16gbk
oracle_home=/oracle/product/9.0.1
oracle_sid=oracle
oracle_term=xterm
ora_nls33=/oracle/product/9.0.1/ocommon/nls/admin/data
ostype=linux-gnu
path=/usr/local/bin:/bin:/usr/bin:/usr/x11r6/bin:/usr/games:
/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:/usr/ccs/bin:/usr/openwin:
/opt/local/bin:/opt/nscpnav/bin:
/oracle/product/9.0.1/bin:/usr/local/samba/bin:/usr/ucb:
tns_admin=/home/oracle/config/9.0.1
仔细检查一下以上的几项,确保都设置正确了。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器