linux下安装oracle,相对windows可能稍微麻烦些,需要修改一些相关参数。网上也有一大堆文档,说得也很详细,本人结合自己的实际安装,将操作步骤大致整理了一下,写在这里,留作笔记,也供需要的朋友参考。
一、安装背景
1、操作系统:Linux 5.5
2、数据库软件:Oracle10g 10.2.0.5
3、工具:
Xmanager 3.0(Build 0143)
SecureCRT Version6.5.2(build446)
WinSCP Version4.1.9(build416)
二、对硬件的要求
1、内存至少1G以上
检查内存 # grep MemTotal /proc/meminfo
2、/tmp 至少400M
检查空间大小 #df -k /tmp
只要不是太老的机器,硬件应该都没什么问题
三、软件检查:
1、查看系统版本
#cat /proc/version
2、查看内核版本:
# uname -r
3、检查要求的包是否已安装,用类似下面的命令
# rpm -q package_name
对于一些必须的RPM包,使用以下脚本查看是否安装
#rpm -q binutils compat-db compat-libstdc++-296 control-center gcc gcc-c++ glibc glibc-common libstdc++ libstdc++-devel make sysstat setarch glibc-devel libaio ksh glibc-headers libgnome libgcc libgnomeui libgomp openmotif libXp --queryformat "%{N}-%{VERSION}.%{RELEASE} (%{ARCH})\n"
四、创建用户和用户组
安装oracle必须添加以下用户组
The OSDBA group (dba)
The OSOPER group (oper)
An unprivileged user(nobody)
The Oracle Inventory group (oinstall)
The Oracle software owner user (typically, oracle)
检查Oracle Inventory Group是否存在
#more /etc/oraInst.loc
inventory_loc=/opt/app/oracle/oraInventory
inst_group=oinstall
检查员OSDBA Group是否创建
#grep dba /etc/group
dba:x:902:oracle
检查员OSOPER Group 是否创建
#grep oper /etc/group
oper:x:903:oracle
检查nobody用户是否存在
# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
检查oracle用户是否存在
# id oracle
uid=901(oracle) gid=901(oinstall) groups=901(oinstall),902(dba),903(oper)
[root@racdb01 ~]# groupadd -g 901 oinstall
[root@racdb01 ~]# groupadd -g 902 dba
[root@racdb01 ~]# groupadd -g 903 oper
[root@racdb01 ~]# useradd -u 901 -g oinstall -G dba,oper oracle
[root@racdb01 ~]# passwd oracle
Changing password for user oracle.
New UNIX password:
BAD PASSWORD: it is based on a dictionary word
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@racdb01 ~]# id oracle
uid=901(oracle) gid=901(oinstall) groups=901(oinstall),902(dba),903(oper)
五、改变opt目录权限
[root@racdb01 data]# chown -R oracle:oinstall /opt
六、上传安装文件并解压
这个随便放哪吧,我一般就直接丢在 /home/oracle目录下了
至于解压 .tar文件一般就 tar -zxvf directory.tar
.zip 文件就unzip
七、修改安装介质
1、修改解压包的oraparam.ini文件,在后面添加一个 redhat-5
[root@primarydb ~]# vi /home/oracle/database/install/oraparam.ini
[Certified Versions]
Linux=redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2,redhat-5
2、修改refhost.xml文件
vi /home/oracle/database/stage/prereq/db/refhost.xml
添加如下一段(增加对version的支持)
<OPERATING_SYSTEM>
<VERSION VALUE="5"/>
<ARCHITECTURE VALUE="x86"/>
<NAME VALUE="Linux"/>
<VENDOR VALUE="redhat"/>
<GLIBC ATLEAST="2.3.2-95.27">
</GLIBC>
<PACKAGES>
<PACKAGE NAME="make" VERSION="3.79" />
<PACKAGE NAME="binutils" VERSION="2.14" />
<PACKAGE NAME="gcc" VERSION="3.2" />
<PACKAGE NAME="libaio" VERSION="0.3.96" />
</PACKAGES>
<KERNEL>
<PROPERTY NAME="semmsl" NAME2="semmsl2" VALUE="250" />
<PROPERTY NAME="semmns" VALUE="32000" />
<PROPERTY NAME="semopm" VALUE="100" />
<PROPERTY NAME="semmni" VALUE="128" />
<PROPERTY NAME="shmmax" VALUE="536870912" />
<PROPERTY NAME="shmmni" VALUE="4096" />
<PROPERTY NAME="shmall" VALUE="2097152" />
<PROPERTY NAME="file-max" VALUE="65536" />
<PROPERTY NAME="VERSION" VALUE="2.6.9" />
<PROPERTY NAME="ip_local_port_range" ATLEAST="1024" ATMOST="65000" />
<PROPERTY NAME="rmem_default" VALUE="262144" />
<PROPERTY NAME="rmem_max" VALUE="262144" />
<PROPERTY NAME="wmem_default" VALUE="262144" />
<PROPERTY NAME="wmem_max" VALUE="262144" />
</KERNEL>
</OPERATING_SYSTEM>
八、对系统文件的修改
1、检查和修改系统版本文件
安装前需要先把 Red Hat Enterprise Linux Server release 5.5 (Tikanga) 注释掉
改成 redhat-4
[root@racdb01 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.5 (Tikanga)
redhat5不支持oracle10g,oracle官方的linux系统应该不需要修改吧
2、修改host文件
主要是将机器名解析为IP
[root@primarydb ~]# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.1.184 primarydb.test.net primarydb
3、修改limits.conf 文件
[root@primarydb ~]$ cat /etc/security/limits.conf
添加如下内容
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
4、在/etc/pam.d/login 文件下添加内容
[root@primarydb ~]$ vi /etc/pam.d/login
session required /lib/security/pam_limits.so
5、修改root下 cat /etc/profile
在该文件下添加如下一段 bash shell
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
6、修改内核参数
[root@primarydb ~]$ vi /etc/sysctl.conf
添加如下一段
kernel.sem = 250 32000 100 128
fs.file-max = 101365
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
注:内核参数修改内容不一定是这些,如果后面安装自检时,内核参数检测通不过,在更加具体提示做修改
7、修改oracle用户下 .bash_profile 文件
添加如下一段
export ORACLE_SID=express 注:这是oracleID名,可根据实际情况修改
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH=$ORACLE_HOME/bin:$PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib
export LIBPATH=$LIBPATH:$ORA_CRS_HOME/lib:$ORACLE_HOME/lib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/jre/
export TEMP=/tmp
添加这段环境变量是为了避免以后重复输入,具体路径可更加实际情况适当修改
九、关闭防火墙
[root@racdb01 ~]# chkconfig --list iptables
注:root目录下才有权限检查
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@racdb01 ~]# chkconfig --level 2345 iptables off
十、设置SELINUX
[root@racdb01 ~]#vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted
十一、数据库安装
远程操作,先打开windows上的xmanager软件
[oracle@racdb01 database]$ export DISPLAY=192.168.1.161:0.0
注:你操作的windows机器的IP,目的是将图像界面显示到你的电脑上
[oracle@racdb01 database]$ export LANG=C
注:设置语言,避免乱码出现
[oracle@racdb01 database]$ ./runInstaller
注:此文件在你解压的安装包里
接下来的步骤就和windows下一样了
一般情况下 redhat5下面做以上修改就可以正确安装,不过可能也会在安装自检时提示一些错误和警告,那大家还要根据具体情况来解决问题。