Bootstrap

RedHat Linux AS3.0 下安装 ORACLE9.2.0.4

首先,准备安装需要的软件包和补丁包:  

所有的补丁说明如下:  
p3006854_9204_LINUX.zip 
在运行 runInstaller 之前打.  
p3119415_9204_LINUX.zip 
在升级到 9.2.0 .4.0之后打.  
p2617419_210_GENERIC.zip 
3119415补丁所需要的补丁.


1.
rpm -qagrep compat 查看系统中是否安有以下几个软件包:

compat-libstdc++-7.3-2.96.122   

compat-gcc-7.3-2.96.122       

compat-libstdc++-devel-7.3-2.96.122  
compat-gcc-c++-7.3-2.96.122  
compat-db- 4.0.14 -5  

2. rpm -qa  grep openmotif查看下列软件包 

openmotif21- 2.1.30 -8  

3. rpm -qa  grep setarch查看:

        setarch-1.3-1

  

以上文件如果没有的话,RHEL3CD3CD4上有相关的RPM,使用:  
# rpm -i compat...i386.rpm  
命令来安装相应的包.  

 

第二,准备安装过程中需要的用户和用户组  
 
在安装的过程中我们使用两个用户同时进行,其中一个是root用户,另外一个是你新建立的oracle用户。  
  
1
、打开一个终端,以root用户登录或者是:su -  root
2
、建立oracle 用户和密码

# groupadd oinstall   (在安装oracleUNIX Group nameoinstall)
# groupadd dba  
# useradd -g oinstall -G dba oracle  
# passwd oracle  

 

第三,安装准备步骤.  
1
、准备文件目录:  

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

注:如果提示参数太少,可以在目录属性-权限 直接设置成 oracle 权限 dba

 

2、设置内核参数,调节信号灯及共享内存:

 

修改 /etc/sysctl.conf 这个文件,加入以下的语句:  
kernel.shmmax = 2147483648 
kernel.shmmni = 4096  
kernel.shmall = 2097152  
kernel.sem = 250 32000 100 128  
fs.file-max = 65536  
net.ipv4.ip_local_port_range = 1024 65000  

 

sem      4个参数依次为SEMMSL(每个用户拥有信号量最大数)SEMMNS(系统信号量最大数)SEMOPM(每次semopm系统调用操作数)SEMMNI(系统辛苦量集数最大数).

Shmmax 最大共享内存2GB 物理内存如果小的话可以设置成 536870912.

Shmmni  最小共享内存 4096KB.

Shmall   所有内存大小.

 

设置完成后用命令 more /etc/sysctl.conf |grep kernel.s  检查.

 

3、设置oracle对文件的要求:  
编辑文件:/etc/security/limits.conf 加入以下语句:  
    oracle 
   soft    nofile    65536  
    oracle 
   hard    nofile   65536  
    oracle 
   soft    nproc    16384  
    oracle 
   hard    nproc    16384  

 

4、设置系统环境:  

      注销系统,使环境变量生效

首先设置root用户这个终端的。  
#export ORACLE_BASE=/opt/ora9  
#export ORACLE_HOME=/opt/ora9/product/9.2  
(Oracle
被安装在这些位置)  

***这个步骤用来最后打补丁时使用,注意这个终端要保持不要关掉它.***

 

5.设置oracle用户的环境, 新开一个终端,  
su - oracle  

***注意一定要新开一个 *** 

 

打开.bash_profile文件,将如下内容加入:

(命令vi $HOME/.bash_profile 编辑用VI使用可查手册 I 进入edit w 存盘)

#oracle 9i  

export DISPLAY=”192.168.1.13: 0.0”   (192.168.1.13本机IP,不能使用127.0.0.1)
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       (
需要建立的数据库全局SID)
export ORACLE_TERM=xterm    (xterm
窗口模式 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 NLS_LANG=AMERICAN   (
设置语言AMERICAN英文)

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data

保存后退出.

执行: source .bash_profile

查看  set | more

退出登录,再次进入,使oracle的环境就已经生效.

 

6、解压文件,安装前打补丁,切换到root用户的控制台:(注:打补丁前执行以下语句)

       #su – root

       #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++

RedHat Advance Server 3下安装Oracle9i不用将gcc降级,有些文档里说需要将gcc降为2.96,其实是不需要的

第四:开始正式安装 

1.      打安装前的补丁

新开一个控制终端(root用户开)  

p3006854_9204_LINUX.zip 补丁安装:(已经将补丁解压到光盘)
root身份运行

#unzip p3006854_9204_LINUX.zip – d /home/ora9i

        #cd /home/ora9i /3006854

        #sh rhe13_pre_install.sh

Applying patch...

Patch successfully applied

2.       #xhost +192.168.1.13   (本地IP地址)

(xhost  disable访问控制,客户端可以从任何主机进行连接)
这个命令用来保证oracle用户调用X11,否则无法安装  

#su - oracle  
在登录终端中切换到oracle用户:  
oracle主目录里运行:# /home/ora9i/Disk1/runInstaller  

    安装过程中的注意事项:

1.在安装中让你输入 UNIX group nameoinstall  (#groupadd oinstall)

如果提示orainstRoot.sh     权限问题,在root终端下执行:

#sh ./tmp/orainstRoot.sh 然后继续

                    2.在安装中选择 software only 不要建数据库

                    3. 安装过程中提示/opt/ora9/product/9.2 权限问题,可另开窗口修改权限为oracle-dba

          在结束的时候还会提示权限问题,另开窗口修改权限为root-root

        #chown oracle /opt/ora9/product/9.2

        #chgrp  dba  /opt/ora9/product/9.2

注意的是以下几点:  
,在部分文档里,要求oracle用户的bash_profile文件中降LD_ASSUME_KERNEL设置为 2.4.19 ,千万不要这样设置,否则会在Rlink时会有一大堆报错  
,安装Oracle不需要额外安装JDK,Oracle自己带  
第三,如果有NLS的错误提示,可以#unset LANG命令,把语言默认成英文.

 

3.开始升级oracle

安装结束后,HTTPD会自动运行.在升级之前,需要将它停下来.  
$ cd $ORACLE_HOME/Apache/Apache/bin  
$  apachectl stop  
./apachectl stop: httpd stopped  
LISTENER
也需要停下来.  
$ lsnrctl stop  
LSNRCTL for Linux: Version  9.2.0 .1.0 - Production on 07-NOV-2003 16:25:41  
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.  
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))  
The command completed successfully  
 
注意:  如果不停的话,oracle会提示不能覆盖文件.这个时候再去将服务停下来也可以,Retry就可以了.  

 

开始打补丁升级.  
注意打补丁时使用root用户,切换到root用户控制台:    
 

            切换到root的终端。注意这个最好是原来那个保持了ORACLE_HOMEORACLE_BASE的环境变量那个终端:

         首先安装 opatch.

         # unzip p2617419_210_GENERIC.zip –d /home/ora9i
#export PATH=$PATH:/home/ora9i/OPatch    (/home/ora9i/OPatch
是解压缩目录)

 

         # unzip p3119415_9204_LINUX.zip  
Archive: p3119415_9204_LINUX.zip  
creating: 3119415/  
inflating: 3119415/README.txt  
# cd 3119415  
# opatch apply 
 

 

         如果提示HOME变量错误可执行语句:

#export ORACLE_BASE=/opt/ora9

#export ORACLE_HOME=/opt/ora9/product/9.2

         出现success的提示就全部安装成功.

#cd /opt/ora9/product/9.2/install/utl

#sh root.sh

否则可能会出现错误提示: /etc/oratab file doesn’t exist

         最后切换到oracle终端:

         # su - oracle

         #dbca   (如果有乱码执行:#unset LANG)

         oracle数据库,全局SID是前面定义的SID

      (查看安装完成后的检查和测试内容)

      可能会出现错误提示: /etc/oratab file doesn’t exist

可执行下面语句:

3.      修改/opt/ora9/product/9.2/network/admin/ tnsnames.ora文件

删除(CONNECT_DATA =下面的内容,

添加(SERVICE_NAME = ora92)   (ora92为前面的SID)

    否则本机执行#oemapp dbastudio 连接不上数据库

数据库建立完成后挂起oracle

          启动oracle监听

$lsnrctl

lsnrctl>status (查状态)

lsnrctl>start

 

检查oracle服务是否挂起

$ps –ef |grep ora

 

连接数据库

$sqlplus /nolog

SQL>connect / as sysdba

SQL>startup mount

检查是否连接oracle

SQL>select sysdate from dual;

Sp2-0640:Not connected

         挂起

SQL>startup

如果出现错误信息:

ORA-01078:failucr in processing system parameters

      LRM-00109:could not open parametet file/opt/ora9/product/9.2/dbs/initora9i.or

执行:

#cp  /opt/ora9/admin/orcl/pfile/init.ora.613200412101  /opt/ora9/product/9.2/dbs/initora9.ora

安装过程错误信息和解决方法

 

安装补丁后出现一下错误信息:

error while loading shared libraries: /etc/libcwait.so: cannot open shared object file:

No such file or directory

Linux 系统不能正常启动提示信息:

error while loading shared libraries: /etc/libcwait.so: cannot open shared object file:

No such file or directory

Kernel panic: Attempted to kill inint!

没有正确解决此问题,重新安装Linux系统。

*************************************************************

 

安装oracle前执行 xhost 命令,出现提示信息:

access control disablad.clients can connect form any host.

不能正常安装oracle

xhost命令: #xhost +192.168.0.2(本地IP地址)

执行:#unset LANG 将语言默认为英文,可安装oracle,使用简体中文问题未解决。

不能正常安装oracle可尝试执行下面语句:

#su – oracle

$echo $LD_ASSUME_KERNEL

*************************************************************

 

oracle安装完成,打开终端,在oracle用户下:

#sqlplus

name:#system

pass:#manager

在试图启动数据库的时候 ,Oracle报告下列错误:
ERROR:
ORA-27101 Shared memory realm does not exist
ORA-01034 ORACLE not available

基本解释

         ErrorORA-27101

Text:shared memory realm does not exist

Cause:Unable to locate shared memory realm

Action:Verify that the realm is accessible

ORACLE_SIDORACLE_HOME设置不正确

 

尝试命令:

         查看数据库是否启动: $ps –ef |grep ora

       SQL>sqlplus internal

       SQL>startup   error:insufficient privileges

 

 

       $sqlplus /nolog

 SQL>connect / as sysdba  error:ORA-12705:inralid or unknown NLS parameter ralue specified.

 SQL>connect

 name-pass: system/manager@huiheng as sysdba

 error:ORA-12154:INS:could not resdve service name

 

 SQL>startup

 ORA-01078:failucr in processing system parameters

 LRM-00109:could not open parametet file/opt/ora9/product/9.2/dbs/initora9i.or

 执行命令:

 $cp /opt/ora9/admin/orcl/pfile/init.ora /opt/ora9/product/9.2/dbs/initora9.ora

 

     SQL>startup

      ORA-00209:control file blocksize mismatch,check alert log for more info

     最初安装dbca数据库没关,数据建了一半终止,数据不能吻合

       错误信息.log文件存放在:/opt/ora9/admin/orcl/create

*************************************************************

# cd 3006854
# sh rhel3_pre_install.sh
Applying patch...
Patch successfully applied
注意:如果运行 rhel3_pre_install.sh出现下面的错误
rhel3_pre_install.sh: line 36: gcc: command not found
是因为你忘了安装gcc,同样要是出现下面的错误:
# ls
ls: error while loading shared libraries: /etc/libcwait.so: cannot open shared object file: No such file or directory
# rm /etc/ld.so.preload
rm: error while loading shared libraries: /etc/libcwait.so: cannot open shared object file: No such file or directory
#
请不要退出bash,用下面的方法来修复(我开始遇到,后来没有遇到了,可能是因为我把gcc降级到了296吧)
# echo "" > /etc/ld.so.preload
rm /etc/ld.so.preload
And start over again
.

 

*************************************************************

在安装到 Datebase configuration Assistant 数据库小助手的第3 Creating and starting oracle instanle 出现错误:/etc/oratab file doesn't exist

#cd /opt/ora9/product/9.2/install/utl

#sh root.sh

自动生成 oratab 文档

 

*************************************************************

在创建oracle数据时出现一下错误直接忽略

ORA-29807:specified operator does not exist

ORA-01430:clumn being added already exists in table

 

*************************************************************

 

export LANG=zh_CN
[erpprod@oracle 9.2.0 ]$ pwd
/home/erpprod/proddb/9.2.0
[erpprod@oracle 9.2.0]$ ll | grep jdk
lrwxrwxrwx 1 erpprod dba 21 7 2 22:27 jdk -> /usr/local/j2sdk1.3.1
[erpprod@oracle 9.2.0]$ ll /usr/local/j2sdk1.3.1/jre/lib/font.properties
font.properties font.properties.en font.properties.ja font.properties.zh
[erpprod@oracle 9.2.0]$ ll /usr/local/j2sdk1.3.1/jre/lib/font.properties*
lrwxrwxrwx 1 root root 18 6 30 10:23 /usr/local/j2sdk1.3.1/jre/lib/font.properties -> font.properties.zh
-rw-r--r-- 1 1000 1000 7942 3 21 2002 /usr/local/j2sdk1.3.1/jre/lib/font.properties.en
-rw-r--r-- 1 1000 1000 11884 3 21 2002 /usr/local/j2sdk1.3.1/jre/lib/font.properties.ja
-rw-r--r-- 1 1000 1000 8054 3 21 2002 /usr/local/j2sdk1.3.1/jre/lib/font.properties.zh

 

 

 

安装完成后的检查和测试

 

1.      打开一个终端,启动oracle agentctl代理服务

$su – oracle

$agentctl start

2.      启动oracle监听

$lsnrctl

lsnrctl>status (查状态)

lsnrctl>start

lsnrctl>exit

3.      检查oracle服务是否挂起

$ps –ef |grep ora

4.      连接数据库

$sqlplus /nolog

SQL>connect / as sysdba

Error:ORA-12705:invalid or unknown NLS parameter value spectfied.

SQL>startup mount

5.      检查是否连接oracle

SQL>select sysdate from dual;

Sp2-0640:Not connected

         6. 启动

SQL>startup

Error:

ORA-01078:FAILURE IN PROCESSING SYSTEM PARAMETERS

  LRM-00109:could not open parameter file /opt/ora9/product/9.2/dbs/initora9i.or

 

开机自动启服务

打开root终端

#vi /etc/oratab

ora9i:/home/oracle/product/:N  (N该成Y)

#vi /ect/rc.local  加入

su – oracle –c “lsnrctl start”

su – oracle –c “startora”

/bin目录下建startora文档,内容如下

sqlplus /nolog << EOF

connect sys/huiheng as sysdba

startup

EOF

****stopora****

sqlplus /nolog << EOF

connect sys/huiheng as sysdba

shutdown immediate

EOF

;