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,则先运行一下:

  1. [root@localhost Server]# rpm -qa|grep elfutils-libelf-devel

如果已经安装了,会有下面的提示:

  1. [root@localhost Server]# rpm -qa|grep elfutils-libelf-devel
  2. elfutils-libelf-devel-static-0.125-3.el5
  3. elfutils-libelf-devel-0.125-3.el5

可以发现,我们grep后面不需要把这个Package的全名写完。

如果没装,则什么提示也没有。此时需要运行下面的命令来安装它。

  1. [root@localhost Server]# rpm -ivh elfutils-libelf-devel*
  2. warning: elfutils-libelf-devel-0.125-3.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
  3. Preparing... ########################################### [100%]
  4.    1:elfutils-libelf-devel-s########################################### [ 50%]
  5.    2:elfutils-libelf-devel ########################################### [100%]
  6. [root@localhost Server]# rpm -qa|grep elfutils-libelf-devel
  7. elfutils-libelf-devel-static-0.125-3.el5
  8. elfutils-libelf-devel-0.125-3.el5

这个*是通配符,即我们不需要写全,它会自己找。不过要注意的是,需要把linux的安装光盘放进wmware里,然后cd到media/光盘名/Server目录下才能找到这个包。

需要装的包如下:

  1. binutils-2.17.50.0.6
  2. compat-libstdc++-33-3.2.3
  3. elfutils-libelf-0.125
  4. elfutils-libelf-devel-0.125
  5. elfutils-libelf-devel-static-0.125
  6. gcc-4.1.2
  7. gcc-c++-4.1.2
  8. glibc-2.5-24
  9. glibc-common-2.5
  10. glibc-devel-2.5
  11. glibc-headers-2.5
  12. kernel-headers-2.6.18
  13. ksh-20060214
  14. libaio-0.3.106
  15. libaio-devel-0.3.106?
  16. libgcc-4.1.2
  17. libgomp-4.1.2
  18. libstdc++-4.1.2?
  19. libstdc++-devel-4.1.2
  20. make-3.81
  21. sysstat-7.0.2
  22. unixODBC-2.2.11
  23. unixODBC-devel-2.2.11

我在别的文章里看到的这些包有点不同,有些文章会多出几个,有些会少一些。暂时不纠结到底需要哪些了。

由于我要装的是oracle 11g,是支持RHEL5的,所以不用像有些文章里装10时去改系统的版本。

2.创建用户

  1. # /usr/sbin/groupadd oinstall
  2. # /usr/sbin/groupadd dba
  3. # /usr/sbin/useradd -g oinstall -G dba oracle
  4. # passwd oracle

最后一条命令运行时,会出现提示,让我们输入oracle用户的密码。

3.修改系统参数

用vi命令修改/etc/sysctl.conf,加上下面的参数:

  1. fs.aio-max-nr = 1048576
  2. fs.file-max = 6815744
  3. kernel.shmall = 2097152
  4. kernel.shmmax = 536870912
  5. kernel.shmmni = 4096
  6. kernel.sem = 250 32000 100 128
  7. net.ipv4.ip_local_port_range = 9000 65500
  8. net.core.rmem_default = 262144
  9. net.core.rmem_max = 4194304
  10. net.core.wmem_default = 262144
  11. net.core.wmem_max = 1048586

用vi命令修改/etc/security/limits.confi,加入下面的参数:

  1. oracle soft nproc 2047
  2. oracle hard nproc 16384
  3. oracle soft nofile 1024
  4. oracle hard nofile 65536

修改/etc/pam.d/login,加入:

  1. session required pam_limits.so

修改/etc/profile,加入:

  1. if [ $USER = "oracle" ]; then
  2.         if [ $SHELL = "/bin/ksh" ]; then
  3.               ulimit -p 16384
  4.               ulimit -n 65536
  5.         else
  6.               ulimit -u 16384 -n 65536
  7.         fi
  8. fi

安装目录配置:

  1. # mkdir -p /u01/
  2. # chown -R oracle:oinstall /u01/
  3. # chmod -R 775 /u01/

然后用su oracle命令切换到oracle用户,然后修改用户变量.bash_profile文件:

  1. [oracle@localhost ~]$ vi .bash_profile

增加下面的内容:

  1. export ORACLE_BASE=/u01/app
  2. export ORACLE_HOME=$ORACLE_BASE/oracle
  3. export ORACLE_SID=liusuping
  4. 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,依次执行下面的命令:

  1. dd if=/dev/zero of=/opt/image/swap bs=1024 count=2048000
  2. mkswap /opt/image/swap
  3. swapon /opt/image/swap

然后用free –m命令来查看现有的交换区是不是变大了。

  1. [root@localhost ~]# free -m
  2.              total used free shared buffers cached
  3. Mem: 1434 1140 293 0 43 848
  4. -/+ buffers/cache: 247 1186
  5. Swap: 3983 0 3983

然后重新运行oracle的安装程序,可以顺利通过检测了:

原文地址:https://www.cnblogs.com/default/p/2561039.html