在FC5上安装oracle 9204

news/2024/11/24 4:20:51/

一、概述
用FC5作为工作环境已经很长时间了,但一直没有安装oracle数据库,嫌麻烦,但是很多测试操作还是不敢在测试库弄,毕竟测试库也有不少开发人员在用,没办法只好在本机装一个数据库了。
在FC5上安装9204很麻烦,需要修改很多东西才能顺利安装。本人在安装的时候话了差不多三天才完全安装好,算是用时最多的一次安装了。
很多文档都说需要对GCC进行降级,但我发现安装过程不需要对GCC进行降级。


二、需要的文件
1、JRE
在FC5安装需要用到两个版本的JRE:一个版本是oracle自带的,在安装数据库软件时用到。还有一个是在用dcba创建数据库时用到,需要1.3.1_15以上版本。
本文用的是:j2re1.4.2_13。大家可以上sun的站点上下载,下载得到文件是:j2re-1_4_2_13-linux-i586.bin。依次执行
chmod +x j2re-1_4_2_13-linux-i586.bin
./j2re-1_4_2_13-linux-i586.bin
mv j2re1.4.2_13 /opt/

2、p3006854_9204_LINUX.zip
这个必须打,否则会出现类似下面的错误:
Initializing Java Virtual Machine from /tmp/OraInstall2007-03-02_06-01-55PM/jre/bin/java. Please wait...
Error occurred during initialization of VM
Unable to load native library: /tmp/OraInstall2007-03-02_06-01-55PM/jre/lib/i386/libjava.so: symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference
安装这个很简单,依次执行:
gunzip p3006854_9204_LINUX.zip
cd 3006854
sh ./rhel3_pre_install.sh

三、安装数据库软件
1、安装必须的包
rpm -q gcc glibc-headers glibc-kernheaders glibc-devel compat-libstdc++ cpp compat-gcc
检查需要的包是否已经安装,不存在的话就安装上
另外,还要安装如下几个包:
#rpm -ivh compat-libgcc-296-2.96-___.rpm
compat-libstdc++-33-3.2.3-___.rpm
compat-libstdc++-296-2.96-___.rpm

2、创建用户
以root登录
su -
# groupadd dba
# useradd -g dba ora9i

3、创建目录及授权
以root登录
mkdir -p /opt/ora9i/product/9204
chown -R ora9i:dba /opt/ora9i

4、设置参数
在/etc/sysctl.conf最后添加如下几行
kernel.sem = 250 32000 100 128
kernel.shmmax = 2147483648
kernel.shmmni = 128
kernel.shmall = 2097152
kernel.msgmnb = 65536
kernel.msgmni = 2878
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

然后运行sysctl -p 使设置生效。
5、设置环境变量
以ora9i用户登录,在.bash_profile中添加如下几行:
ORACLE_BASE=/opt/ora9i
ORACLE_HOME=/opt/ora9i/product/9204
ORACLE_SID=ora9i
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:$LD_LIBRARY_PATH
NLS_LANG=american_america.ZHS16GBK
PATH=$ORACLE_HOME/bin:/usr/bin:/usr/ucb:/etc:/usr:$PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORA_NLS33 LD_LIBRARY_PATH NLS_LANG PATH

注意:不要设置LD_ASSUME_KERNEL=2.4.1(在FC4中需要设置),否则运行任何命令都会出现下面的错误:
/bin/sh: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory

6、打补丁
gunzip p3006854_9204_LINUX.zip
cd 3006854
sh ./rhel3_pre_install.sh

7、解压
gunzip ship_9204_linux_disk1.cpio.gz
gunzip ship_9204_linux_disk2.cpio.gz
gunzip ship_9204_linux_disk3.cpio.gz

cpio -idmv < ship_9204_linux_disk1.cpio
cpio -idmv < ship_9204_linux_disk2.cpio
cpio -idmv < ship_9204_linux_disk3.cpio
8、正式安装
在root下执行:
xhost +
su - ora9i
为了避免乱码,设置:
unset LANG
unset LC_CTYPE
unset LC_ALL
然后进入解压出来的Disk1,运行:
./runInstaller
一步一步进入,注意不要选择创建数据库。

注意:在安装数据库软件时要用原来的JRE,不要用新下载的,否则开始安装时会挂在copying jre上不动。

在安装时,第一步会产生$ORACLE_HOME/bin/gennttab这个文件,在安装中不断查找该文件是否已经生成,如果已经生成,则将文件做以下修改:
# Change this...
LIB=`$ECHO ${TtoLIB} | $SED 's/ /
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoLIB} | $SED 's/ /
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoLIB} | $SED 's/ /
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`

# To this...
LIB=`$ECHO ${TtoLIB} | $SED 's/ /n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoLIB} | $SED 's/ /n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoLIB} | $SED 's/ /n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`

注意:实际的文件内容可能与上面的不一致,但需要修改的内容是一样的:就是把行的修改为n,并把上下两行合并成一样。
注意:这一步必须在link到18%前完成,否则linking阶段时进度条死在18%不动。

在安装到网络和监听时会失败,不用管就行了。

四、创建数据库

创建数据库要用下载的新版本的JRE,否则会报错:
/opt/ora9i/jre/1.1.8/bin/../lib/i686/native_threads/libzip.so: symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference (libzip.so)
Unable to initialize threads: cannot find class java/lang/Thread
Could not create Java VM

具体步骤是:
以ora9i用户执行
cd $ORACLE_HOME
mv JRE JRE_BAK
ln -s /opt/j2re1.4.2_13 JRE

登录root用户
su -
# cd /opt/ora9i/product/9204/JRE/bin/
# ln -s java jre
# cd /opt/ora9i/product/9204/JRE/lib/i386/native_threads
# ln -s java jre
然后su - ora9i,运行dbca,就可以顺利完成创建数据库了。

五、设置监听

我们在安装时设置网络和监听的时候出了问题,当时是跳过的。现在可以用netmgr来设置网络和监听:
在ora9i用户下运行:
[ora9i@suk 9204]$ netmgr
Exception in thread "main" java.lang.VerifyError: (class: oracle/net/mgr/servicename/DBPanel$1, method: actionPerformed signature: (Ljava/awt/event/ActionEvent;)V) Illegal use of nonvirtual function call
遇到类似这样的错误的话,不要慌,解决方法是修改netmgr脚本:

[ora9i@suk 9204]$ vi /opt/ora9i/product/9204/bin/netmgr
修改
# Run Net Manager
$JRE -classpath $CLASSPATH oracle.net.mgr.container.NetApplication oracle.net.mgr.container.NetApplication
为:
# Run Net Manager
$JRE -noverify -classpath $CLASSPATH oracle.net.mgr.container.NetApplication oracle.net.mgr.container.NetApplication

之后就可以顺利运行了,但用netca还是有问题,会报错:
/opt/ora9i/product/9204/bin/netca: line 138: 3802 Aborted $JRE -classpath $CLASSPATH oracle.net.ca.NetCA $*

也没有找出解决方法,不过没关系了,大部分netca的操作我们都可以在netmgr来完成。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/231499/viewspace-63787/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/231499/viewspace-63787/


http://www.ppmy.cn/news/624076.html

相关文章

巧用FC5的“添加/删除程序”(转)

巧用FC5的“添加/删除程序”(转) 安装完后可以看到&#xff0c;FC5菜单结构中有个很明显的变化就是在“应用程序”的最下方&#xff0c;出现了"Add/remove software“&#xff0c;有了这个工具&#xff0c;我们就可以很方便的在图形界面下安装或是反安装自己需要的软件了。…

Houdini 过程化地形系统(二):基于UE4的FC5植被系统(1)

背景 通过之前的几篇分析实践&#xff0c;已经基本打通了UE4的Houdini植被管线部分&#xff0c;并对Far Cry5&#xff08;简称FC5&#xff09;的植被系统的需求做了整理&#xff0c;在接下来的几节中&#xff0c;会关注于如何使用Houdini基于UE4来开发类似FC5的植被生成系统。这…

GVM踩坑记录之 Failed to find port_list ‘33d0cd82-57c6-11e1-8ed1-406186ea4fc5‘

问题 创建New Target时 Port List不可选&#xff0c;并且save时报错Failed to find port_list 33d0cd82-57c6-11e1-8ed1-406186ea4fc5 版本 GSA版本: (gsad --version) Greenbone Security Assistant 21.4.1~dev1 GVM版本: (gvmd --version) Greenbone Vulnerability Mana…

FC5与linux

http://forum.byr.cn/wForum/disparticle.php?boardNameLinux&ID13218 基本上&#xff0c;是这样的关系&#xff1a; if RH9win98 then FC5WinXP SP2 呵呵 redhat 9是redhat桌面linux的最后一个版面,可能是redhat认为发展桌面linux没什么前途,转向了服务器, 后来发布的…

FC5-(linux)内核编译,新手艰辛的历程

用LINUX开发也有段时间了&#xff0c;一直没对内核进行编译过&#xff0c;今天静下来&#xff0c;决定对我的内核进行编译。上网上 找了一些资料&#xff0c;实验过程如下(按照原 文章的实验过程&#xff0c;略有改动&#xff0c;整理&#xff09;****************************…

发现FC5 t3的四个新变化(FC5体验时代续篇)

记得以前在linux下用优盘或是移动硬盘总是很麻烦&#xff0c;不能像Windows那样做到真正的PnP&#xff0c;到了FC3&#xff0c;FC4就好一点了&#xff0c;插上优盘或移动硬盘一般都能识别并自动mount上&#xff0c;但另一个问题又来了&#xff0d;&#xff0d;编码&#xff0c;…

FC5硬盘安装的两种方法介绍(转)

FC5硬盘安装的两种方法介绍(转)[more]转载&#xff1a; 小弟借鉴网上朋友的经验&#xff0c;写下自己的实践经历和各位交流&#xff0c;希望大家有什么好的方法一起分享。Thank you very much ! 一、通过引导 vmlinuz 和 initrd.img 来进入安装 (1)下载一键GHOST硬盘版&#xf…

[西门子/博途]关于FC5/50,FC6/60的一些经验坑

首先简单了解一下AG_SEND/AG_LSEND,AG_RECV/AG_LRECV(AG_SSEND我没用过&#xff0c;不做解释) 首先AG_SEND****和TSEND不一样&#xff0c;这是一个硬限制。 AG_SEND用于CP组态&#xff0c;而TSEND/TRCV适用于局域网内通讯&#xff08;同网段&#xff09;本次主要介绍CP组态的…