为Linux配备Oracle 8

为Linux配备Oracle 8

  在Linux下使用Oracle 8以前,应当安装Oracle 8,但Oracle公司提供的安装文档较为简单。笔者借鉴其在Unix操作系统下的安装方法,得出了在Linux上安装Oracle 8的方法,此方法并不一定是最好的,使各位读者用上Oracle 8才是本文的目的。

前期准备

  假定安装环境是Red Hat Linux,请在安装前确认Linux的核心版本为2.0.36及以上。

  1.以Root用户登录进入系统,创建用户oracle和组dba,这是Oracle默认的安装用户。创建安装用户后,用tar -xvzf 将压缩文件解压到一个指定的目录,本文假定为/oracle,因为tar进行数据归档与用户本机的用户ID、组ID不同,所以要运行chown -R oracle:dba 以更改文件属性。

  2.由于Oracle本身对共享段的要求,用户必须重新手工生成核心,以便共享段的设定满足安装要求。为生成核心,用户应当安装Linux操作系统的源代码,编辑/usr/src/linux/include/shmparam.h,将#define SHMMAX 0x002000000一行的0x002000000(32MB)改为256MB以上,然后在/usr/src/linux下运行make dep、make clean、make bzImage生成核心,使用linuxconf命令将新核心设为启动核心。这一步一定要做,如果生成的新核心有错,可以用原来的核心启动计算机。可用ipc -ml查看共享段的设置是否满足要求。当共享段大于2GB时,查看到的值是负数。

  3.安装相应的egc包。假定安装光盘mount在/mnt/cdrom上,用命令modprobe isofs使操作系统能处理光盘的文件系统,然后运行mount -t iso9660 /dev/cdrom /mnt/cdrom,如在安装后修改了/etc/fstab,可不进行这一步操作。进入相应的RPMS目录,安装以egc开始的包,采用的安装命令为rpm -ivh <包名>。

设定安装的环境变量

  安装前,应该设定相应的环境变量。修改用户Oracle的.bash—profile文件,设定相应的环境变量。由于安装系统时需要Root用户,也要有这些环境变量,故将其放在/etc/profile内,加*号为Oracle专有的环境变量,示例如下:


# /etc/profile 
# System wide environment and startup programs 
# Functions and aliases go in /etc/bashrc 
JAVA—HOME=/usr/local/jdk1.1.3 
SYBASE=/opt/sybase-11.9.2 
DSQUERY=SYBASERDBMS 
*PATH=$PATH:$JAVA—HOME/bin:/usr/X11R6/bin:/home/oracle/product/8.0.5/bin 
PS1=″u@h:w$″ 
ulimit -c 1000000 
if [ ′id -gn′ = ′id -un′ -a ′id -u′ -gt 14 ]; then umask 002 
else umask 022 
fi 
USER=′id -un′ 
LOGNAME=$USER 
MAIL=″/var/spool/mail/$USER″ 
CLASSPATH=/usr/local/jdk1.1.3/lib:$HOME/bin 
HOSTNAME=′/bin/hostname′ 
HISTSIZE=1000 
HISTFILESIZE=1000 
export JAVA—HOME CLASSPATH SYBASE DSQUERY 
export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL 
*ORACLE—HOME=/home/oracle/product/8.0.5 
*ORACLE—BASE=/home/oracle 
*ORACLE—OWNER=oracle 
*ORACLE—SID=oracle8 
*ORACLE—TERM=386 
*LD—LIBRARY—PATH=/home/oracle/product/8.0.5/lib 
*TMPDIR=/var/tmp 
*export ORACLE—HOME ORACLE—BASE ORACLE—OWNER ORACLE—SID ORACLE—TERM 
export LD—LIBRARY—PATH TMPDIR 
for i in /etc/profile.d/.sh ; do 
if [ -x $i ]; then . $i 
fi 
done 
unset i 

安装并启动数据库

  1.以用户Root登录系统,然后到相应目录运行/oracle/orainst/oratab.sh可生成/etc/oratab文件。用su - oracle切换到用户Oracle,运行/oracle/orainst/orainst就可启动安装命令,安装时注意在这一步不要安装Oracle文档、JDK和智能代理,并且不要创建数据库对象。重新启动/oracle/orainst/orainst安装的RDBMS部份,一般情况下除了输入几个用户定制的口令其余按默认值就可以了。Oracle安装程序开始拷贝文件,拷贝文件过程中,当安装到数据库管理系统(RDBMS)时,用户可从另一终端登录,用ps -ef | grep oracle见到一些Oracle进程已启动。

  2.数据库服务器安装完成后,就可以手工启动了。以用户Oracle登录,进入$ORACLE—HOME/bin,运行DBStart就可以启动数据库服务器。运行DBShut就可停止数据库服务器。

  如果用户不太熟悉Oracle的网络部份,可将$ORACLE—HOME/network/admin/ora拷贝到/etc目录,在$ORACLE—HOME/bin下运行lsnrctl start就可以启动网络监视进程。

  3.为了每一次启动系统时自动启动Oracle或管理员手工指定是否每一次启动时自动启动Oracle,可采用如下方法。以Root登录,进入/etc/rc.d/init.d,手工生成文件Oracle,至于文件的书写格式可参见其余相应文件,示例如下:


#!/bin/sh 
# oracle   This shell script takes care of starting and stopping 
#       oracle. 
# chkconfig: 2345 80 30 
# description: oracle is a RDBMS Server. 
# processname: oracle 
# Source function library. 
. /etc/rc.d/init.d/functions 
# Source networking configuration. 
. /etc/sysconfig/network 
# Check that networking is up. 
[${NETWORKING}= ″no″ ] && exit 0 
# See how we were called. 
case ″$1″ in 
start) 
# Start daemons. 
echo -n ″Starting oracle: ″ 
su - oracle /home/oracle/product/8.0.5/bin/dbstart > /dev/null 2>&1 
sleep 60 
su - oracle/home/oracle/product/8.0.5/bin/lsnrctl start > /dev/null 2>&1 
echo 
touch /var/lock/subsys/oracle 
;; 
stop) 
# Stop daemons. 
echo -n ″Shutting down oracle: ″ 
su - oracle/home/oracle/product/8.0.5/bin/lsnrctl stop > /dev/null 2>&1 
su - oracle /home/oracle/product/8.0.5/bin/dbshut > /dev/null 2>&1 
echo 
rm -f /var/lock/subsys/oracle 
;; 
restart) 
$0 stop 
$0 start 
 ;; 
status) 
status oracle 
;; 
) 
echo ″Usage: oracle {start|stop|restart|status}″ 
exit 1 
esac 
exit 0 

客户端配置

  为了能使用Windows下的一些开发工具,可以按如下方法进行:

  1.在Windows下安装Oracle客户端软件(可以采用Oracle 7.xx的Windows客户端软件),安装完成后,将Linux下的/etc/tnsnames.ora拷到Windows下的$ORACLE etworkadmin目录下,在开始选单中运行net easy configure并指明ODBC连接的字串名和运行SQLPLUS需要的主机字串(Host String),就可以从客户端连上服务器,通过ODBC进行数据库的开发。

  2.如果用户使用Delphi为开发工具,可在BDE设定中指明有远端Oracle服务器,设定时仅指明数据库系统的网络协议为TNS(Transparent Network Substrate,请不要使用TCP),然后进入数据库桌面,就可以访问远端Oracle数据库上的数据了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值