Oracle 8i 在 Redhat 7.1~7.3 下安装手册
以下以 linux7.3 为例
** 1 ** ** .准备工作: **
1). 软件清单:
compat-egcs-6.2- 1.1.2 .16.i386.rpm
compat-egcs-c++-6.2-1.1.2.16.i386.rpm
compat-egcs-objc-6.2-1.1.2.16.i386.rpm
compat-glibc-6.2-2.1.3.2.i386.rpm
compat-libs-6.2-3.i386.rpm
compat-libstdc++-6.2-2.9.0.16.i386.rpm
binutils-2.10.91.0.2-3.i386.rpm
glibc-2.1.3-stubs.tar.gz
i386-glibc-2.1-linux.tar.gz
j2sdk-1_4_2_05-linux-i586-rpm.bin
linux81701.tar
如果你是完全安装 Redhat 7.3 的话,前 6 个包都已经安装,如果没有请在 Redhat 7.3 的光盘里安装。
接下来安装 glibc2.1 包。 Oracle 8i 安装时需要 glibc2.1 。由于 Red Hat Linux 7.x 及以上版本的 glibc 版本高于 2.1 版本,所以必须对 glibc 进行降级。否则在安装时会出现错误,导致安装失败。以 root 账号登录,执行以下命令:
cd /
#tar zxvf i386-glibc-2.1-linux.tar.gz
隐藏 /usr/bin 目录下的 gcc 、 cc 、 ld ,避免被 Oracle installer 使用,代码如下:
cd /usr/bin
mkdir mysaved
mv gcc cc ld mysaved
ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc
ln -s gcc cc
ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld
隐藏 /usr/lib 目录下的 libc.so 、 libdl.so 、 libm.so 和 libpthread.so 文件,避免被 Oracle installer 使用,代码如下:
cd /usr/lib
mkdir mysaved
mv libc.so libdl.so libm.so libpthread.so mysaved
mv libc.a libdl.a libm.a libpthread.a mysaved
2). 安装 binutils-2.10.91.0.2-3.i386.rpm ,一定要装,不要忘了,因为他和后来的 ld 有关,不安装会出现 ld:
unrecognized emulation mode: elf_i386_glibc21. 的错误。
rpm -Uvh --force --nodeps binutils-2.10.91.0.2-3.i386.rpm
当然装完后如果你高兴可以把 7.3 的还原过来。
//*3). 安装 Jdk 1.1.8 _v3 到 /usr/local ,这个不用多说了
bunzip2 jdk118_v3.tar.bz2
tar -xvf jdk118_v3.tar
ln -s jdk118_v3 java
*/
3 ).安装 jdk (这里以 jdk 1.4.2 为例,默认安装到 /usr/ 下)
Chmod +x j2sdk-1_4_2_05-linux-i586-rpm.bin
./ j2sdk-1_4_2_05-linux-i586-rpm.bin
Rpm –ivh j2sdk-1_4_2_05-linux-i586-rpm
Ln –s /usr/j2sdk-1_4_2_05 /usr/local/java
安装完后设置 java 环境
修改 /etc/profile 添加如下内容
#+ -----------------+
|JAVA ENVIRONMENT|
#+------------------+
JAVA_HOME=/usr/local/java
CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/jaxp.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
PATH=$PATH:$JAVA_HOME/bin
4). 获得补丁包 -- 两个 Oracle 的 glibc- 2.1.3 -stubs.tar.gz , 还有一个就是最最关键的 , 所有在 Redhat 7.x 下装过 Oracle
8.1.7 的朋友都被 97% 的 Linking Error 搞得很恼火 , 这个包就是管这个 Bug 的 , 其实是一个文件 -- env_ctx.mk , 怎么用 , 别急 , 一会告诉你。
** 5). ** ** 准备用户环境。 **
groupadd dba
groupadd oinstall // 可选
useradd oracle -g oinstall -G dba
passwd oracle
输入新用户的密码。
创建安装目录 ( 以 /usr/local/oracle 为例 )
mkdir /usr/local/oracle
mkdir /usr/local/oracle/product
mkdir /usr/local/oracle/product/ 8.1.7
chown –R oracle.dba /usr/local/oracle
chmod –R 775 /usr/local/oracle
mkdir /var/opt/oracle
chown –R oracle.dba /var/opt/oracle
chown -775 /var/opt/oracle
退出系统,以新建的 Oracle 用户登陆。
编辑 /home/oracle 目录下的 .bash_profile ,添加以下内容:
#. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh
+--------------------------+
| SETUP ORACLE ENVIRONMENT |
+--------------------------+
ORACLE_BASE=/usr/local/oracle
ORACLE_HOME=/usr/local/oracle/product/ 8.1.7
ORACLE_SID=oracle8
ORACLE_TERM=eterm
#NLS_LANG=AMERICAN.AMERICA.ZHS16GBK
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/classes12.zip:$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
DISPLAY=192.168.0.125:0.0
+--------------------------+
| LINUX STUFF |
+--------------------------+ Z
export GCC_EXEC_PREFIX=/usr/i386-glibc21-linux/lib/gcc-lib/
export LD_ASSUME_KERNEL= 2.2.5
export LDEMULATION=elf_i386_glibc21
PATH=$PATH:$ORACLE_HOME/bin:/usr/i386-glibc-2.1-linux/i386-glibc21-linux/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM ORA_NLS33 LD_LIBRARY_PATH PATH CLASSPATH DISPLAY
umask 022
存盘退出,建议重新启动,以防不测。
** 5. ** ** 安装 Oracle 8.1.7 **
启动安装程序,
/mnt/cdrom/runinstaller (如果你是从光盘安装的话)
出现以下安装画面 :
点击 Next 继续
选择安装路径,直接下一步。接下来会出现让你添安装组名 -oinstall ,然后以 root 用户执行 orainstRoot.sh ,但我这里没有出现,这是我已经安装过,然后卸载,就免了这一步了。
选择安装产品,选第一个就可以,下一步出现以下画面:
选择安装类型,这里选典型就可以,下一步选择 JDK HOME 。
下一步,填入数据库 SID ,这里是 oracle8 ,
下一步,再下一步就出现安装进度,安装正式开始了。
你可以去休息一下, 15 分钟后在回来,这时候你看到的应该是如下,错误!!!!
这就是 env_ctx.mk 的过错,新开一个 konsole 窗口,把下载的 env_ctx.mk copy 到 $ORACLE_HOME/ctx/lib/ 目录下,然后 Retry 。
安装可以顺利结束。这时跳出窗口,要以 Root 身份运行 root.sh
注意, Root.sh 里有两处错误:
RMF=/bin/rm -f
修改为
RMF="/bin/rm -f"
RUID=/usr/bin/id|$AWK -F( '{print $2}'|$AWK -F) '{print $1}
修改为
RUID=/usr/bin/id|$AWK -F( '{print $2}'|$AWK -F) '{print $1}'
或者下载模板 root.sh
完成以后点 OK 。出现 net8 配置窗口:
不要着急点下一步,新开一个 konsole 口,把下载下来的 Oracle 补丁包 glibc- 2.1.3 -stubs.tar.gz ,在 $ORACLE_HOME 下
tar -xvzf /tmp/glibc- 2.1.3 -stubs.tar.gz
然后运行, ./setup_stubs.sh (也许是这个名),大约 5 分钟后,一切 OK 了。返回安装画面,选种 Perform typical configuration ,下一步,
上图为创建数据库时
数据库创建完成。
Oracle 数据库安装过程结束。
打开 konsole 窗口,运行 sqlplus system/manager@oracle8 ,应该可以连接到数据库。运行 oemapp dbastudio ,出现以下 Oracle
DBA Studio 。一切 OK !
启动和关闭脚本
1) 启动脚本( dbstart )
#! /bin/bash
su - oracle<
. /home/oracle/.bash_profile
lsnrctl start
svrmgrl<
connect internal
startup
exit
EOE
exit
EOF
2) 关闭脚本( dbstop )
#! /bin/bash
<SPAN lang=EN-US style="