首页 > 数据库 > Oracle > 正文

在 Red Hat Linux 9 上安装 Oracle9i Database

2020-03-09 22:45:57
字体:
来源:转载
供稿:网友
这篇文章在oracle的网站上发表,堪称安装oracle9i database的指南性论述。

作者:abhijeet kulkarni


数据库版本:oracle9i r2 (9.2.0.1.0)

1. 创建用户与组:
-------------------------
切换为 root 用户并执行下列命令

$ su -

# groupadd oinstall
# groupadd dba
# useradd -g oinstall -g dba oracle
# passwd oracle

2. 创建目录。
--------------------------
我们将把所有东西都安装到在 /opt/ora9 目录下:

# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -r oracle.dba /opt/ora9

3. 预安装(系统配置):
---------------------------

3.1 安装这些兼容性库:

compat-gcc-7.3-2.96.118.i386.rpm
compat-libgcj-7.3-2.96.118.i386.rpm
compat-libgcj-devel-7.3-2.96.118.i386.rpm
nss_db-compat-2.2-20.i386.rpm

您可以在安装 cd 上找到这些程序包。
第一个文件在 cd1 的 redhat rpms 目录中
另外 3 个文件在 cd2 的 rpms 目录中



3.2 设置内核参数以便能够成功启动:

把这些行添加到 /etc/sysctl.conf
如果您有更多 ram,也可以更改这些值:

kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

把这些行添加到 /etc/security/limits.conf

oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384

重启系统以使这些内核更改生效,如果不允许重启,您可以在运行时通过执行下列命令更改内核参数:

# echo 250 32000 100 128 > /proc/sys/kernel/sem
# echo 536870912 > /proc/sys/kernel/shmmax
# echo 4096 > /proc/sys/kernel/shmmni
# echo 2097152 > /proc/sys/kernel/shmall
# echo 65536 > /proc/sys/fs/file-max
# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range

4. 预安装(oracle 环境):
----------------------------
以 oracle 用户身份登录:

su - oracle

将下列行放置在 ~/.bashrc:

#oracle 9i
export oracle_base=/opt/ora9
export oracle_home=/opt/ora9/product/9.2
export path=$oracle_home/bin:$oracle_home/apache/apache/bin:$path
export oracle_owner=oracle
export oracle_sid=ora9i
export oracle_term=vt100
export ld_assume_kernel=2.4.1
export threads_flag=native
export ld_library_path=/opt/ora9/product/9.2/lib:$ld_library_path
export path=/opt/ora9/product/9.2/bin:$path
#
#根据您本国的情况更改这个 nls 设置:
#示例:
# german_germany.we8iso8859p15, american_america.we8iso8859p2 etc.
#
export nls_lang='croatian_croatia.ee8iso8859p2'


如果您需要其它的国家设置(这些是克罗地亚的),请参考这里的支持设置,并对 nls_lang 变量进行相应更改。

5. 安装:
------------------------

以 root 用户登录并允许用户 oracle 向 x 显示器写入:

su -
xhost +

登录为 oracle 用户:

su - oracle

开始安装。不要切换到您的 cd-rom 安装目录,因为您将无法在系统需要时卸下第一张 cd 以插入其它 cd。

/mnt/cdrom/install/linux/runinstaller

在安装期间,系统会提示您插入其它安装盘。打开一个新的控制台,用命令 umount /dev/cdrom(以 root 用户身份)卸下当前的盘片,替换该盘片。如果 redhat9 没有自动安装它,那么使用命令 mount /dev/cdrom 将其装上

安装将产生两个错误。

* 第一,您将会看到一个错误对话框提示关于 ins_oemagent.mk 的问题。选择忽略该错误,我们将在安装后更正该错误。
* 第二个对话框将通知您 "error in invoking target install of makefile $oracle_home/ctx/lib/ins_ctx.mk"。
如果发生该错误,打开一个新的控制台并以 oracle 用户身份登录。执行下列命令:

$ cd $oracle_home/install
$ tail make.log

您将看到与下面类似的一行信息:

gcc -o ctxhx -l/opt/ora9/product/9.2/ctx/lib/ -l/opt/ora9/product/9.2/lib/
-l/opt/ora9/product/9.2/lib/stubs/ /opt/ora9/product/9.2/ctx/lib/ctxhx.o
-l/opt/ora9/product/9.2/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut
-lsc_ch -lsc_fi -lctxhx -lc -wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9
-lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9

复制该行,在行末添加 -ldl 然后在 $oracle_home/bin 中运行它。

$ cd $oracle_home/bin
$ gcc -o ctxhx -l/opt/ora9/product/9.2/ctx/lib/
-l/opt/ora9/product/9.2/lib/ -l/opt/ora9/product/9.2/lib/stubs/
/opt/ora9/product/9.2/ctx/lib/ctxhx.o -l/opt/ora9/product/9.2/ctx/lib/
-lm -lsc_ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc
-wl,-rpath,/opt/ora9/product/9.2/ctx/lib -lnls9 -lcore9 -lnls9 -lcore9
-lnls9 -lxml9 -lcore9 -lunls9 -lnls9 -ldl

现在,点击对话框上的忽略按钮,安装将继续进行。

最后,oracle 安装可能会提示您代理程序启动失败。选择忽略,我们将在稍后更改此错误。

6. 安装后处理
---------------------------
打开一个控制台并以 oracle 用户身份登录。执行这些命令:

$ cd $oracle_home/network/lib
$ make -f ins_net_client.mk install

然后编辑 $oracle_home/ctx/lib/ins_ctx.mk 文件,把 13-14 行从:

ctxhx:$(ctxhxobj)
$(link) $(ctxhxobj) $(inso_link)

改为

ctxhx:$(ctxhxobj)
$(link) -ldl $(ctxhxobj) $(inso_link)

然后执行

$ make -f $oracle_home/ctx/lib/ins_ctx.mk install

现在,您将能够用下面的命令启动您的代理程序了

$ /opt/ora9/product/9.2/bin/agentctl start

7. 启动数据库
------------------------------
如果您的安装程序在第 5 部分的最后一步被挂起,不要担心。等一段时间看它是否响应,如不响应则终止它。
在一个 shell 脚本(如 setvar.sh)中添加下面几行
#oracle 9i
export oracle_base=/home1/orahome
export oracle_home=/home1/orahome/ora92
export path=$oracle_home/bin:$oracle_home/apache/apache/bin:$path
export oracle_owner=oracle
export oracle_sid=ora9i
export oracle_term=vt100
export ld_assume_kernel=2.4.1
export threads_flag=native
export ld_library_path=/opt/ora9/product/9.2/lib:$ld_library_path
export path=/opt/ora9/product/9.2/bin:$path
export ora_nls33=$oracle_home/ocommon/nls/admin/data

保存此文件并在命令提示符运行
$source setvar.sh

现在转至 $oracle_home/bin
使用任意编辑器编辑 dbca 脚本
$kwrite dbca

找到 jre_home 环境变量。它指向 jdk 1.8,后者是安装 cd 的一部分。更改该变量并使其指向您的 linux 安装的 jdk1.3 或 1.4,转至文件末尾,该变量用于调用 java 程序。从路径中删除 bin 目录,并将 jre 可执行文件更名为 java 文件。这就像使用我们自己的 jdk 调用 java 程序一样。
启动
$./dbca

8. 启动数据库实例
打开一个 sqlplus 会话并以 sys/passwd 作为系统数据库管理员登录
sql>create spfile from pfile='full path of the .ora file created by the dbca utility ';
eg /home1/orahome/admin/dl226b/pfile/initdl226b.ora

sql>shutdown immediate;
sql>startup;
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表