linux下安装oracle出错, 请教如何解决! 你最好说出linux和ORACLE的版本 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.linuxsir.org/bbs/showthread.php?s=f83886460cf1a900f7c9f65149c9e7a4&threadid=46429 Installing Oracle 9iR2 on RHEL AS 3 Step-by-Step 作者: Fenng--------------------------------------------------------------------------------Installing Oracle 9iR2 on Red Hat Enterprise Linux Advanced Server 3 (RHEL 3)全球最大的 Linux 厂商 Red Hat 公司 最近发布了Red Hat Enterprise Linux 3.该版本号称有史以来最强大的开源操作系统,也被视为是当前最为完整的 Linux 企业级解决方案.得到了包括 Oracle 在内的众多重量级厂商的积极响应, 很多产品在该平台上通过了认证.Oracle 9iR2自然也在此列. Oracle 9i+ RHEL3 会有什么样的效果?可能很多技术人员都很感兴趣.心动不如行动,不如马上开始搭建自己的应用环 境,亲身感受一下.配置RedHat EL3操作系统描述:Red Hat Enterprise Linux AS release 3 (Taroon) Kernel 2.4.21-4.EL on an i686安装操作系统之后,应该修改核心参数.执行如下参数:#echo "kernel.sem=\"250 32000 100 128\"" >> /etc/sysctl.conf#echo "kernel.shmmax=2147483648" >> /etc/sysctl.conf第一条命令中的 250、32000、100、128 分别对应SEMMSL、SEMMNS、SEMOPM、SEMMNI这四个核心参数. 上面是典型的核心参数配置.您可能需要根据您的实际环境进行适当的变动.关于这些核心参数的说明在Oracle的Oracle9i Installation Guide Release 2 (9.2.0.1.0) for UNIX Systems中有很详细的说明.( http://download-west.oracle.com/docs/html/A96167_01/toc.htm ) 然后,应该检查一下上面的操作是否正确:# more /etc/sysctl.conf | grep kernel.skernel.sysrq = 0kernel.shmmax=2147483648kernel.sem="250 32000 100 128"# 检查并安装相关补丁 在这个版本的RHEL上安装Oracle,必须要有几个软件包(参考 Metalink 上的 Oracle Note:252217.1) . 确认以下rpm包都已经安装: # rpm -qa | grep compatcompat-gcc-7.3-2.96.122compat-libstdc++-devel-7.3-2.96.122compat-gcc-c++-7.3-2.96.122compat-libstdc++-7.3-2.96.122compat-glibc-7.x-2.2.4.32.5compat-db-4.0.14-5# rpm -qa | grep openmotif openmotif-2.2.2-16 openmotif-devel-2.2.2-16#openmotif-2.2.2-16 即可# rpm -qa | grep setarchsetarch-1.3-1上面显示的内容是在笔者已经安装了具体的RPM包之后的结果.一般情况下,你的系统上的输出结果和这个不同.如果个别包没有安装,把系统安装光盘mount上,找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应的包:# rpm -ivh compat.....rpm 要额外注意的是,这些软件包之间是有依赖性的,先后的顺序要找好.否则会报告不能安装的错误.还需要将gcc、g++更换为2.96的版本. (参考 Metalink 上的 Oracle Note:252217.1 ) # mv /usr/bin/gcc /usr/bin/gcc323# ln -s /usr/bin/gcc296 /usr/bin/gcc# mv /usr/bin/g++ /usr/bin/g++323 # ln -s /usr/bin/g++296 /usr/bin/g++如果报告找不到文件,请确认该软件包是否安装.检查环境变量 这个版本的默认的glibc 很合适.免去了不少麻烦.登录为oracle用户 # su – oracle $ cd $ vi .bash_profile#添加如下内容#这个参数必须指定,否则Java安装界面无法启动export LD_ASSUME_KERNEL=2.4.1export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_HOME/product/9.2.0export ORACLE_SID=DEMO export ORACLE_TERM=xtermexport ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/libLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/libexport LD_LIBRARY_PATH# Set shell search pathsexport PATH=$PATH:$ORACLE_HOME/bin然后执行 $ source .bash_profile使环境变量生效对LD_ASSUME_KERNEL环境变量的说明:这个参数实际上是为了避免Linux上的NPTL(Native POSIX Thread Library)和Oracle应用不兼容的问题. 设定LD_ASSUME_KERNEL为2.4.1表示使用旧有的 "Linuxthreads with floating stacks" . (这里有对 floating stacks的大体上的解释. ) 从Metalink ( http://metalink.oracle.com/ 需要CSI )下载必须的补丁需要的补丁: p3095277_9204_LINUX.zip 9.2.0.4.0的升级补丁包. p3006854_9204_LINUX.zip 在运行 runInstaller 之前打. p3119415_9204_LINUX.zip 在升级到9.2.0.4.0之后打. p2617419_210_GENERIC.zip 打3119415补丁所需要的. p3095277_9204_LINUX.zip大约有300多兆.如何快速下载Metalink上的补丁?请参考这个Link:http://www.ncn.cn/oracle/tips/oratip009.htm后面的三个比较小.可以在 ITPub 下载:http://www.itpub.net/showthread.php?s=&threadid=171693&perpage=15&pagenumber=1 唉,又是补丁,安装可算是比较费周折的了,不知道Oracle的工程师是不是每次安装也会感到麻烦.开始安装9.2.0 运行runInstaller之前,需要打补丁3006854: 注意,必须以root身份运行. # unzip p3006854_9204_LINUX.zip 会在当前目录下创建一个目录,进入到该目录中# cd 3006854 # ./rhel3_pre_install.sh 如果报告如下错误:-bash: ./rhel3_pre_install.sh: Permission denied修改一下权限就可以了# chmod +x *.sh然后就可以运行runInstaller安装. 操作过程不再赘述.但是relink 阶段,会报告两个错误:ins_oemagent.mk 和 ins_ctx.mk. 点 Ignore 忽略.要升级到9.2.0.4的版本才可以修复这两个Bug.升级到9.2.0.4.0 安装结束后,需要停掉Oracle的所有相关程序. 最好命令都执行完之后再用 ipcs 命令确认一下.然后就可以开始打补丁升级了.解包: $ unzip p3095277_9204_LINUX.zip $ cpio -icvd < 9204_lnx32_release.cpio现在可以再次运行runInstaller,在OUI的界面中找到Patch的Stage文件,然后即可以进行升级.注意: 首先要升级oui,否则不让升级到9.2.0.4.而且,升级完oui以后,要退出oui然后再重新运行oui, 再升级到9.2.0.4.不退出继续升级会报告错误.升级过程中,仍然会出现ins_oemagent.mk错误,点 Ignore 忽略.我们将在下一个步骤中修复该错误.再次打补丁 升级过后,需要打补丁修复ins_oemagent.mk错误. 首先安装 opatch. $ unzip p2617419_210_GENERIC.zip $ pwd/u01/install$ export PATH=$PATH:/u/install/3119415:/sbin 注意: 修改PATH时,除了要包括解压出来的OPatch目录外,还要包括/sbin目录,这样才可以找到 fuser命令.而fuser命令也是该补丁过程所需要的.$ unzip p3119415_9204_LINUX.zip Archive: p3119415_9204_LINUX.zip creating: 3119415/ ...... inflating: 3119415/README.txt $ cd 3119415 $ opatch apply 运行dbca的问题. $ dbca 会正常出现图形界面,然后可以选择创建数据库,但是最后一步莫名其妙的界面消失.在命令行出现如下错误:/oracle/product/9.2.0.1/bin/dbca: line 124: 27348 Killed $JRE_DIR/bin/jre -DORACLE_HOME=$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATHoracle.sysman.assistants.dbca.Dbca $ARGUMENTS 要解决这个问题:$vi $ORACLE_HOME/bin/dbca #将下面列出的除第3 行外的其余行注释掉.#if [ -f /etc/rac_on ]; then #Run DBCA $JRE_DIR/bin/jre –native –DORACLE_HOME=$OH…… #else #Run DBCA #$JRE_DIR/bin/jre –DORACLE_HOME=$OH…… linux,oracle版本不同,环境变量设置和安装方法就有区别,你还是说清楚些。 rpm -ivh compat-gcc-7.3-2.96.118.i386.rpm rpm -ivh compat-libgcj-7.3-2.96.118.i386.rpm rpm -ivh compat-libgcj-devel-7.3-2.96.118.i386.rpm rpm -ivh nss_db-compat-2.2-20.i386.rpm oracle 查询语句问题。。。 Oracle分页存储过程的疑问 紧急问题!!! 数组下标越界,字符串分割 请问如何将Oracle的SQL脚本的执行结果存到一个文件里? 存储过程自动消失的问题? 数据库备份问题 问客户端和服务器的问题? 我的OracleOraHome81ManagementServer启动不起来,有人说是java问题 pl/sql简单问题: 安装Oracle9i到100%时出错! 各位大侠,ORACLE配置问题请教
源操作系统,也被视为是当前最为完整的 Linux 企业级解决方案.得到了包括 Oracle 在内的众多重量级厂商的积极响
应, 很多产品在该平台上通过了认证.Oracle 9iR2自然也在此列. Oracle 9i+ RHEL3 会有什么样的效果?可能很多技
术人员都很感兴趣.心动不如行动,不如马上开始搭建自己的应用环 境,亲身感受一下.配置RedHat EL3操作系统描述:Red Hat Enterprise Linux AS release 3 (Taroon)
Kernel 2.4.21-4.EL on an i686
安装操作系统之后,应该修改核心参数.执行如下参数:#echo "kernel.sem=\"250 32000 100 128\"" >> /etc/sysctl.conf
#echo "kernel.shmmax=2147483648" >> /etc/sysctl.conf第一条命令中的 250、32000、100、128 分别对应SEMMSL、SEMMNS、SEMOPM、SEMMNI这四个核心参数.
上面是典型的核心参数配置.您可能需要根据您的实际环境进行适当的变动.关于这些核心参数的说明在Oracle的Oracle9i Installation Guide Release 2 (9.2.0.1.0) for UNIX Systems
中有很详细的说明.( http://download-west.oracle.com/docs/html/A96167_01/toc.htm ) 然后,应该检查一下上面的操作是否正确:# more /etc/sysctl.conf | grep kernel.s
kernel.sysrq = 0
kernel.shmmax=2147483648
kernel.sem="250 32000 100 128"
#
检查并安装相关补丁 在这个版本的RHEL上安装Oracle,必须要有几个软件包(参考 Metalink 上的 Oracle Note:252217.1) . 确认以下
rpm包都已经安装: # rpm -qa | grep compat
compat-gcc-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-glibc-7.x-2.2.4.32.5
compat-db-4.0.14-5# rpm -qa | grep openmotif
openmotif-2.2.2-16
openmotif-devel-2.2.2-16#openmotif-2.2.2-16 即可# rpm -qa | grep setarch
setarch-1.3-1上面显示的内容是在笔者已经安装了具体的RPM包之后的结果.一般情况下,你的系统上的输出结果和这个不同.如果个
别包没有安装,把系统安装光盘mount上,找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应
的包:# rpm -ivh compat.....rpm 要额外注意的是,这些软件包之间是有依赖性的,先后的顺序要找好.否则会报告不能安装的错误.还需要将gcc、g++更换为2.96的版本. (参考 Metalink 上的 Oracle Note:252217.1 ) # mv /usr/bin/gcc /usr/bin/gcc323
# ln -s /usr/bin/gcc296 /usr/bin/gcc
# mv /usr/bin/g++ /usr/bin/g++323
# ln -s /usr/bin/g++296 /usr/bin/g++如果报告找不到文件,请确认该软件包是否安装.检查环境变量 这个版本的默认的glibc 很合适.免去了不少麻烦.登录为oracle用户
# su – oracle
$ cd
$ vi .bash_profile#添加如下内容#这个参数必须指定,否则Java安装界面无法启动
export LD_ASSUME_KERNEL=2.4.1export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_HOME/product/9.2.0
export ORACLE_SID=DEMO
export ORACLE_TERM=xterm
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然后执行
$ source .bash_profile
使环境变量生效对LD_ASSUME_KERNEL环境变量的说明:这个参数实际上是为了避免Linux上的NPTL(Native POSIX Thread Library)和Oracle应用不兼容的问题. 设定
LD_ASSUME_KERNEL为2.4.1表示使用旧有的 "Linuxthreads with floating stacks" . (这里有对 floating
stacks的大体上的解释. ) 从Metalink ( http://metalink.oracle.com/ 需要CSI )下载必须的补丁需要的补丁: p3095277_9204_LINUX.zip 9.2.0.4.0的升级补丁包.
p3006854_9204_LINUX.zip 在运行 runInstaller 之前打.
p3119415_9204_LINUX.zip 在升级到9.2.0.4.0之后打.
p2617419_210_GENERIC.zip 打3119415补丁所需要的. p3095277_9204_LINUX.zip大约有300多兆.如何快速下载Metalink上的补丁?请参考这个Link:
http://www.ncn.cn/oracle/tips/oratip009.htm后面的三个比较小.可以在 ITPub 下载:
http://www.itpub.net/showthread.php?s=&threadid=171693&perpage=15&pagenumber=1 唉,又是补丁,安装可算是比较费周折的了,不知道Oracle的工程师是不是每次安装也会感到麻烦.开始安装9.2.0 运行runInstaller之前,需要打补丁3006854: 注意,必须以root身份运行. # unzip p3006854_9204_LINUX.zip
会在当前目录下创建一个目录,进入到该目录中# cd 3006854
# ./rhel3_pre_install.sh
如果报告如下错误:
-bash: ./rhel3_pre_install.sh: Permission denied
修改一下权限就可以了
# chmod +x *.sh
然后就可以运行runInstaller安装. 操作过程不再赘述.但是relink 阶段,会报告两个错误:ins_oemagent.mk 和 ins_ctx.mk. 点 Ignore 忽略.要升级到9.2.0.4的版本才
可以修复这两个Bug.
升级到9.2.0.4.0 安装结束后,需要停掉Oracle的所有相关程序. 最好命令都执行完之后再用 ipcs 命令确认一下.然后就可以开始打补丁
升级了.解包: $ unzip p3095277_9204_LINUX.zip $ cpio -icvd < 9204_lnx32_release.cpio现在可以再次运行runInstaller,在OUI的界面中找到Patch的Stage文件,然后即可以进行升级.注意:
首先要升级oui,否则不让升级到9.2.0.4.而且,升级完oui以后,要退出oui然后再重新运行oui, 再升级到9.2.0.4.不退出
继续升级会报告错误.升级过程中,仍然会出现ins_oemagent.mk错误,点 Ignore 忽略.我们将在下一个步骤中修复该
错误.
再次打补丁 升级过后,需要打补丁修复ins_oemagent.mk错误. 首先安装 opatch. $ unzip p2617419_210_GENERIC.zip $ pwd
/u01/install
$ export PATH=$PATH:/u/install/3119415:/sbin 注意:
修改PATH时,除了要包括解压出来的OPatch目录外,还要包括/sbin目录,这样才可以找到 fuser命令.而fuser命令也是
该补丁过程所需要的.$ unzip p3119415_9204_LINUX.zip
Archive: p3119415_9204_LINUX.zip
creating: 3119415/
......
inflating: 3119415/README.txt $ cd 3119415
$ opatch apply
运行dbca的问题. $ dbca 会正常出现图形界面,然后可以选择创建数据库,但是最后一步莫名其妙的界面消失.在命令行出现如下错误:/oracle/product/9.2.0.1/bin/dbca: line 124: 27348 Killed $JRE_DIR/bin/jre -DORACLE_HOME=
$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATH
oracle.sysman.assistants.dbca.Dbca $ARGUMENTS 要解决这个问题:$vi $ORACLE_HOME/bin/dbca #将下面列出的除第3 行外的其余行注释掉.#if [ -f /etc/rac_on ]; then
#Run DBCA
$JRE_DIR/bin/jre –native –DORACLE_HOME=$OH……
#else
#Run DBCA
#$JRE_DIR/bin/jre –DORACLE_HOME=$OH……
rpm -ivh compat-libgcj-7.3-2.96.118.i386.rpm
rpm -ivh compat-libgcj-devel-7.3-2.96.118.i386.rpm
rpm -ivh nss_db-compat-2.2-20.i386.rpm