Linux red hat enterprise5下安装oracle
我对linux是绝对的菜鸟,但今天有份工作是给一台装在linux上的oracle服务器设置自动数据备份。这很可能是只做一次的工作,只做一次的东西,时间久了肯定会忘掉,所以把整个安装和配置过程记录下来,供下次需要时翻看。
Linux我是装在vmware上的,大概一个月前装的,当时没记下了,现在也忘记是怎么装的了。
Oracle可以从它的官网上下载,我下载的是oracle 11g(11.2.0.1.0)for linux x86版,地址是http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-linuxsoft-085393.html。有两个文件,分别是linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip。
下载下来之后要把文件传到linux上,我用ssh的secure file transfer来传。
1.安装oracle之前,需要先装一些必备。我参考的是http://www.liusuping.com/ubuntu-linux/redhat-linux-oracle-11g-r2.html
有些必备可能之前就已经装上了,所以在安装前,先用rpm –qa|grep xxx来看一下有没有安装。例如要装这个elfutils-libelf-devel,则先运行一下:
-
[root@localhost Server]# rpm -qa|grep elfutils-libelf-devel
如果已经安装了,会有下面的提示:
-
[root@localhost Server]# rpm -qa|grep elfutils-libelf-devel
-
elfutils-libelf-devel-static-0.125-3.el5
-
elfutils-libelf-devel-0.125-3.el5
可以发现,我们grep后面不需要把这个Package的全名写完。
如果没装,则什么提示也没有。此时需要运行下面的命令来安装它。
-
[root@localhost Server]# rpm -ivh elfutils-libelf-devel*
-
warning: elfutils-libelf-devel-0.125-3.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
-
Preparing... ########################################### [100%]
-
1:elfutils-libelf-devel-s########################################### [ 50%]
-
2:elfutils-libelf-devel ########################################### [100%]
-
[root@localhost Server]# rpm -qa|grep elfutils-libelf-devel
-
elfutils-libelf-devel-static-0.125-3.el5
-
elfutils-libelf-devel-0.125-3.el5
这个*是通配符,即我们不需要写全,它会自己找。不过要注意的是,需要把linux的安装光盘放进wmware里,然后cd到media/光盘名/Server目录下才能找到这个包。
需要装的包如下:
-
binutils-2.17.50.0.6
-
compat-libstdc++-33-3.2.3
-
elfutils-libelf-0.125
-
elfutils-libelf-devel-0.125
-
elfutils-libelf-devel-static-0.125
-
gcc-4.1.2
-
gcc-c++-4.1.2
-
glibc-2.5-24
-
glibc-common-2.5
-
glibc-devel-2.5
-
glibc-headers-2.5
-
kernel-headers-2.6.18
-
ksh-20060214
-
libaio-0.3.106
-
libaio-devel-0.3.106?
-
libgcc-4.1.2
-
libgomp-4.1.2
-
libstdc++-4.1.2?
-
libstdc++-devel-4.1.2
-
make-3.81
-
sysstat-7.0.2
-
unixODBC-2.2.11
-
unixODBC-devel-2.2.11
我在别的文章里看到的这些包有点不同,有些文章会多出几个,有些会少一些。暂时不纠结到底需要哪些了。
由于我要装的是oracle 11g,是支持RHEL5的,所以不用像有些文章里装10时去改系统的版本。
2.创建用户
-
# /usr/sbin/groupadd oinstall
-
# /usr/sbin/groupadd dba
-
# /usr/sbin/useradd -g oinstall -G dba oracle
-
# passwd oracle
最后一条命令运行时,会出现提示,让我们输入oracle用户的密码。
3.修改系统参数
用vi命令修改/etc/sysctl.conf,加上下面的参数:
-
fs.aio-max-nr = 1048576
-
fs.file-max = 6815744
-
kernel.shmall = 2097152
-
kernel.shmmax = 536870912
-
kernel.shmmni = 4096
-
kernel.sem = 250 32000 100 128
-
net.ipv4.ip_local_port_range = 9000 65500
-
net.core.rmem_default = 262144
-
net.core.rmem_max = 4194304
-
net.core.wmem_default = 262144
-
net.core.wmem_max = 1048586
用vi命令修改/etc/security/limits.confi,加入下面的参数:
-
oracle soft nproc 2047
-
oracle hard nproc 16384
-
oracle soft nofile 1024
-
oracle hard nofile 65536
修改/etc/pam.d/login,加入:
-
session required pam_limits.so
修改/etc/profile,加入:
-
if [ $USER = "oracle" ]; then
-
if [ $SHELL = "/bin/ksh" ]; then
-
ulimit -p 16384
-
ulimit -n 65536
-
else
-
ulimit -u 16384 -n 65536
-
fi
-
fi
安装目录配置:
-
# mkdir -p /u01/
-
# chown -R oracle:oinstall /u01/
-
# chmod -R 775 /u01/
然后用su oracle命令切换到oracle用户,然后修改用户变量.bash_profile文件:
-
[oracle@localhost ~]$ vi .bash_profile
增加下面的内容:
-
export ORACLE_BASE=/u01/app
-
export ORACLE_HOME=$ORACLE_BASE/oracle
-
export ORACLE_SID=liusuping
-
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
注销root,用oracle登录,并启动图形界面。
进入下载的oracle那两个zip包所在的文件夹, 我的目录是/usr/tools/oracle,分别解压这两个zip包,如下图:
两个包都要解压,解到同一个目录下,然后运行下面./runInstaller,稍等一会,就弹出了oracle的安装向导,如下图:
但这个向导的显示好像有些问题,一闪一闪的,下面的"下一步"按钮根本点不了。应该是分辨率的问题,装个vmware tool就好了。
Vmware tool装的也不容易,这里就不写出来了。
装完wmware tool之后重启linux后,就可以调分辨率了,调完之后,oracle的安装界面也就不闪了。但安装程序检查系统时,又报了内存不足和交换空间不足的错误。内存不足很好解决,加点内存就行了,但把交换空间调大则需要linux命令来做了。
参考http://lanlfeng.blog.51cto.com/337014/123130,依次执行下面的命令:
-
dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000
-
mkswap /opt/image/swap
-
swapon /opt/image/swap
然后用free –m命令来查看现有的交换区是不是变大了。
-
[root@localhost ~]# free -m
-
total used free shared buffers cached
-
Mem: 1434 1140 293 0 43 848
-
-/+ buffers/cache: 247 1186
-
Swap: 3983 0 3983
然后重新运行oracle的安装程序,可以顺利通过检测了: