首先
,
准备安装需要的软件包和补丁包
:
所有的补丁说明如下:
p3006854_9204_LINUX.zip 在运行 runInstaller 之前打 .
p3119415_9204_LINUX.zip 在升级到 9.2.0 .4.0 之后打 .
p2617419_210_GENERIC.zip 打 3119415 补丁所需要的补丁 .
p3006854_9204_LINUX.zip 在运行 runInstaller 之前打 .
p3119415_9204_LINUX.zip 在升级到 9.2.0 .4.0 之后打 .
p2617419_210_GENERIC.zip 打 3119415 补丁所需要的补丁 .
1. 用 rpm -qa │ grep 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
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
以上文件如果没有的话
,
在
RHEL3
的
CD3
和
CD4
上有相关的
RPM
包
,
使用
:
# rpm -i compat...i386.rpm
命令来安装相应的包 .
# rpm -i compat...i386.rpm
命令来安装相应的包 .
第二
,
准备安装过程中需要的用户和用户组
在安装的过程中我们使用两个用户同时进行,其中一个是 root 用户,另外一个是你新建立的 oracle 用户。
1 、打开一个终端,以 root 用户登录或者是: su - root
2 、建立 oracle 用户和密码
在安装的过程中我们使用两个用户同时进行,其中一个是 root 用户,另外一个是你新建立的 oracle 用户。
1 、打开一个终端,以 root 用户登录或者是: su - root
2 、建立 oracle 用户和密码
# groupadd oinstall (在安装oracle时UNIX Group name:oinstall
)
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
第三
,
安装准备步骤
.
1 、准备文件目录:
1 、准备文件目录:
# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9
# 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
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
编辑文件: /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 被安装在这些位置 )
#export ORACLE_BASE=/opt/ora9
#export ORACLE_HOME=/opt/ora9/product/9.2
(Oracle 被安装在这些位置 )
***
这个步骤用来最后打补丁时使用,注意这个终端要保持不要关掉它
.***
5.
设置
oracle
用户的环境,
新开一个终端,
su - 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 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 身份运行 ,
用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, 否则无法安装
这个命令用来保证 oracle 用户调用 X11, 否则无法安装
#su - oracle
在登录终端中切换到 oracle 用户:
在 oracle 主目录里运行 : # /home/ora9i/Disk1/runInstaller
在登录终端中切换到 oracle 用户:
在 oracle 主目录里运行 : # /home/ora9i/Disk1/runInstaller
安装过程中的注意事项:
1.
在安装中让你输入
UNIX group name
:
oinstall (#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 命令 , 把语言默认成英文 .
第 一 , 在部分文档里 , 要求 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 就可以了 .
$ 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 用户 , 切换到 root 用户控制台:
切换到
root
的终端。注意这个最好是原来那个保持了
ORACLE_HOME
,
ORACLE_BASE
的环境变量那个终端:
首先安装
opatch
.
# unzip p2617419_210_GENERIC.zip –d /home/ora9i
#export PATH=$PATH:/home/ora9i/OPatch (/home/ora9i/OPatch 是解压缩目录 )
#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
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
ERROR:
ORA-27101 Shared memory realm does not exist
ORA-01034 ORACLE not available
基本解释
Error
:
ORA-27101
Text:shared memory realm does not exist
Cause:Unable to locate shared memory realm
Action:Verify that the realm is accessible
ORACLE_SID
和
ORACLE_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 .
# 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
[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