|
/****************************************************************************
* File: $HOME/Projects/LinuXP/HowTo_OracleInstall
* Title: Red Hat 9.0 下 Oracle 9iR2 安装手记
* Author: Cure <[email protected]>
* Date: 03-07-13 03:22
* --------------------------------------------------------------------------
* Description:
* 记述 Oracle 9iR2 在 Red Hat 9.0 下的详细安装过程, 会碰到的两个
* 错误及其解决办法
* --------------------------------------------------------------------------
* Change Logs:
* 03.07.13 03:18 Cure 通宵整理毕
* 03.07.11 04:49 Cure 通宵连装带写毕
****************************************************************************/
Red Hat 9.0 下 Oracle 9iR2 安装手记
目标读者:
有兴趣体验 Linux 下的 Oracle 之强悍而却被繁复的安装过程所震慑的朋友
本文分三大部分:
. 安装准备
关注系统要求, 变量设置等
. 安装过程
细谈安装过程中会碰到的两个关键性错误及其解决方案
. 后期工作
安装完 Oracle 后的一些恢复工作
请选择能满足你需求的内容, 如果乐意忍受我的废话和絮叨, 建议一边通读全文, 一边实际操作
我相信你读完的时候也就装完了, 因为我就是这样边装边写下来的
真正详细的资料请参看:
http://www.puschitz.com/InstallingOracle9i.shtml
感谢这篇文章的作者 (们?), 他 (们?) 明晰细致的解说让我受益匪浅!
一. 安装准备
[准备工作]
. 取得 Oracle9iR2 (官方网站: http://www.oracle.com 上面可以下载)
. JDK: 不需要, Oracle 现在内嵌了
[一些要求]
. swap 区大小
swap 区起码是内存大小的 2 - 3 倍, 比如我的内存是 256 M, 而我的 swap 就给了整整 1 G
. 最大共享内存 (shmmax) 大小:
. 查看 Red Hat 原有的默认值:
cat /proc/sys/kernel/shmmax
输出:
33554432
. 为安装过程临时性地改变这个参数:
echo `expr 1024 \* 1024 \* 1024` > /proc/sys/kernel/shmmax
再看看:
cat /proc/sys/kernel/shmmax
输出:
1073741824
. 为以后的运行永久性地改变该参数:
vi /etc/sysctl.conf
在最后一行添上:
kernel.shmmax=1073741824
以后系统一启动, shmmax 的值就是这个
[账号创建]
. 创建 oracle 用户账号:
用 root 账号, 执行:
. 添加 dba 用户组:
groupadd dba
. 添加 Oracle 安装用户组:
groupadd oinstall
. 添加一个名为 oracle 的用户到 oinstall 组中, 同时添加为 dba 组的成员 (-g -G 参数的含义请: man useradd)
useradd -g oinstall -G dba oracle
. 为用户 oracle 设置密码:
passwd oracle
[目录创建]
. 为 Oracle 创建安装目录:
以 root 账号创建:
mkdir /opt/oracle
mkdir /opt/oracle/product
mkdir /opt/oracle/product/9.2.0
把这个目录及其以下的子目录 (-R 表示递归改变) 的权限交给 oinstall 用户组里的 oracle 用户:
chown -R oracle.oinstall /opt/oracle
再创建, 再授权: (以下目录的作用暂不清楚)
mkdir /var/opt/oracle
chown oracle.dba /var/opt/oracle
chmod 755 /var/opt/oracle
[变量设置]
. 设置环境变量:
. ***** 最最重要的一个变量 *****
LD_ASSUME_KERNEL
由于 Red Hat 9.0 使用了 NPTL (Native POSIX Thread Library), Oracle 与此不兼容, 如果这
个变量没有设置正确, 那么在安装的时候, 进度还在 0% 就死在下面这地方:
Installing Java Runtime Environment... Link pending... Copying README...
因为这个, 我把 Oracle 装了二十多遍, 吐血.
更多关于 NPTL 的内容, 可以参看 Red Hat 9.0 的发行注记.
. 正确作法:
export LD_ASSUME_KERNEL=2.4.1
其它环境变量可以一并写到 oracle 账号根目录下的如 .bash_profile 或 .bashrc 这些文件中 (如果
你用的是 bash 的话...), 我们需要将下面这些环境变量一起添加到如 .bashrc 里:
export LD_ASSUME_KERNEL=2.4.1
# Oracle Environment
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/9.2.0
export ORACLE_SID=test
export ORACLE_TERM=xterm
# export TNS_ADMIN= Set if sqlnet.ora, tnsnames.ora, etc. are not in $ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN;
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
# Set shell search paths
export PATH=$PATH:$ORACLE_HOME/bin
二. 安装过程
[安装实录]
. 开始安装:
. 用 oracle 用户执行下面的操作
. 挂载 Oracle 安装盘
. 为了安装的顺利, 推荐使用英文界面.
Red Hat 默认的 LANG=zh_CN.gb18030 一开始可以让 Oracle 安装界面出现中文, 但是到后期配置的时候,
有些界面就是不能显示中文了, 每个中文字都会变成小圈圈.
不过 Oracle 支持 gb2312, 如果你能忍受 Java 界面上的中文外观的话, 可以更改 LANG:
export LANG=zh_CN.gb2312
如果希望装完之后让 OEM 这些 GUI 也能显示中文, 记得:
1. 一会儿安装过程中要选上中文语言包
2. 把上面对 LANG 的设置写入 ~/.bashrc 文件中
我倒宁愿用 e 文, 所以, 在安装之前, 可以这样改变语言设置:
export LANG=en
不一定要写 en, 只要让 Oracle 安装程序认不出是什么语言, 它就会自动用回英文, 比如我就乐意:
export LANG=asdf
. 注意, 如果你曾经为了让光盘挂载时可以显示中文, 而在 /etc/fstab 中增加了如 iocharset,
codepage 这些参数, 请记得把它们暂时去掉, 因为我发现这些参数会导致 runInstaller 无法
执行 - 提示错误是: 权限不够, 我不明白原因, 只能告诉你解决的办法.
. 记住, 为了避免安装过程中换盘的尴尬, 千万不要进入到光盘目录里运行 runInstaller
而是应该在光盘目录外面用绝对路径启动 runInstaller, 如:
[oracle@DruGs cure]$ /mnt/cdrom/runInstaller
. 安装过程:
假设我们是第一次安装, 那么我们会看到要求确定 Inventory Location 的对话框, 默认应该给
我们显示出来了:
/opt/oracle/oraInventory
我们按默认这个路径走
接着是 UNIX Group Name, 填:
oinstall
这时会弹出一个窗口, 要求我们用 root 权限, 执行:
/tmp/orainstRoot.sh
这个脚本运行后, 会把我们刚才给的两个参数写入这个文件:
/etc/oraInst.loc
大家可以打开看看内容, 很简单的两行东西
执行完毕, 我们摁对话框上的 Continue...
Next...
Available Products 里, 我们就选 Oracle9i Database 9.2.0.1.0
右下角的 Product Lanuages 里我们选上简体中文, 以便像前面提到的可以使用中文的界面
Next...
Installation Types 我们选 Enterprise Edition
Next..
Database Configuration 我们选 Genral Purpose
Next...
Database Indetification 里填你喜欢用的数据库名称, 比如我用 MyOracle (不能超过 8 个字符...)
SID: MyOracle
Next...
Next...
Database Character Set, 我选 Unicode, 为了更广泛的应用 (?)
Next...
Summary 对话框汇总我们前面的设置
Install...
安装进度为 29% 的时候会要求插入第二张盘, 照做 (如果一开始在光盘目录里启动这个安装进程, 这时你就该郁闷了...)
安装进度为 84% 的时候要求插入第三张盘, just do it...
. 第一个错误出现
在显示 Install successful 之后, 进行 Linking Oracle9i Database 9.2.0.1.0
进度条跑到 69% 的时候, 终于盼来期待已久的错误对话框:
Error in invoking target install of makefile
/opt/oracle/product/9.2.0/network/lib/ins_oemagent.mk
不用慌, 这是我第二次解决这个问题, 请往下看:
这个问题的原因在于 Red Hat 9.0 所用的 glibc-2.3.2-11.9, 这个版本里的有一个函数发生了变化, 导致 Oracle
安装时调用出错. 而低版本的 glibc-2.3.2-5 里, 这个函数还是原来的样子. 所以,
解决方法:
把 Red Hat 的 glibc 降级 (不用担心会影响系统或其它应用程序, 降级完, 安装好 Oracle 我们再升级
回去, 一切 OK 的).
到这里下载低版本的 glibc-2.3.2-5:
http://www.puschitz.com/rh9_gcs_download
然后:
rpm -Uvh --force glibc-2.3.2-5.i686.rpm glibc-common-2.3.2-5.i386.rpm \
glibc-devel-2.3.2-5.i386.rpm
如果以上安装过程期间有任何依赖错误, 记得把依赖的软件包都记录下来 (包括它们的版本号),
然后先把它们卸载, 再执行上面的命令. 记下来是为了后面重新恢复.
降级完了? 摁错误对话框里的 Retry, 看看是不是问题解决了?
. 第二个错误出现
不用太久的期待, 在进度条跑到 84% 的时候, 我们最后一个错误终于又等到了:
Error in invoking target install of makefile
/opt/oracle/product/9.2.0/ctx/lib/ins_ctx.mk
镇定, 我们看解决方案:
编辑 $ORACLE_HOME/ctx/lib/env_ctx.mk, 找到 "INSO_LINK =", 添加 "$(LDLIBFLAG)dl" 到这一行中
原来是:
INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa
$(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi
$(LLIBCTXHX) $(LDLIBFLAG)c -Wl,-rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)
添加后成为:
INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)dl $(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa
$(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi
$(LLIBCTXHX) $(LDLIBFLAG)c -Wl,-rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)
Retry!
进度条是不是跑得让你兴奋?!
在 Link Successful 之后, 会弹出一个 Setup Privileges 的对话框, 要求我们以 root 权限执行:
/opt/oracle/product/9.2.0/root.sh
Do it!
执行完毕, 我们就摁 ok
这时配置工具会启动, 包括 Database Configuration Assistant
到这里就说明数据库软件本身都安装完啦! 后面的事情就和这篇文章无关了, 我也收笔了 (关键
是后面的我还不会, 哈哈)
三. 后期工作
. 恢复 glibc:
找到 Red Hat 第一张盘, 里面就有 glic , 重新升级就 ok!
如果不升级, 你会发现一些郁闷的事情, 比如 xmms 无法启动, 告诉你段错误...
升级回去就没事了!
如果在装完之后你还想继续安装, 很不幸, 那样会出错, 比如我装完数据库接着想安装客户端
然后就报错, 说某个参数出错. 最简单的解决办法就是退出安装界面, 重新运行一次 runInstaller
再选择你希望安装的产品继续安装! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|