winson 发表于 2018-9-22 06:17:33

Oracle笔记(一)RHEL5.7十步安装Oracle11g R2

  Linux上安装oracle,因其过程之繁琐,报错率之高,成为了许多工程师的梦魇。前段时间因工作需要,分别在HP的PC服务器和小型机上装了几次oracle,其间的过程是生不如死啊,简直都快弄出人命了~如果自己没有一套完整的安装流程,光靠临时去百度的话,我想任何人都会有这样的问题:不断报错,不断卡壳,没完没了……最后还很有可能导致不得不重装系统。这些使得我不得不对自己的教训进行了总结,现总结出一份史上最详细的安装教程,供自己备忘,同时也分享给大家。
  本教程适用环境为32位的RHEL5系统和oracle11g R2。
  1、在安装oracle之前,用命令检查必需的RPM软件包有没有安装
  命令如下:
  rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaiolibaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel
  如果RPM包安装完全的话会如图所示

  如果未安装完全会显示XXX is not installed,这个时候可以通过挂在RHEL5.4的光盘或镜像,在Server文件夹里寻找相应的RPM包安装。
  2、建立oracle系统用户和安装目录
  创建一个主组oracle和一个副组dba
  groupadd oinstall
  groupadd dba
  创建oracle安装文件夹
  mkdir -p /oracle
  添加一个oracle用户, 根目录是 /oracle, 主的组是oinstall 副的组是dba
  useradd -g oinstall -G dba -d /oracle oracle
  拷贝包含环境变量的文件到安装目录下,这个之后会用到
  cp /etc/skel/.bash_profile /oracle
  cp /etc/skel/.bashrc /oracle
  cp /etc/skel/.bash_logout /oracle
  为oracle用户设置密码 123456
  passwd oracle
  设置安装目录用户权限
  chown -R oracle:oinstall /oracle
  检查 nobody 是否存在
  id nobody
  缺省存在的,会显示nobody的uid、gid和groups,默认都是99。如果不存在可以输入以下命令
  /usr/sbin/useradd -g nobody
  3、修改内核参数
  vi /etc/sysctl.conf
  在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
  
  4、设置oracle用户的shell limit
  vi /etc/security/limits.conf
  在limits.conf中加入以下内容,同样放在末尾,如图所示
  oracle         soft    nproc   2047
  oracle         hard    nproc16384
  oracle         soft    nofile   1024
  oracle         hard    nofile65536
  
  增加下面的内容到文件 /etc/pam.d/login 中,使shell limit生效
  vi /etc/pam.d/login
  session    required   pam_limits.so

  5、设置oracle 用户环境变量
  首先切换到oracle用户下
  su – oracle
  vi .bash_profile
  在隐藏的.bash_profile文件中,将原有的环境变量删除,加入以下环境变量,注意自己的根目录位置
  ORACLE_BASE=/oracle
  ORACLE_HOME=$ORACLE_BASE/oracle
  ORACLE_SID=DATA
  PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
  export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

  6、将oracle安装包解压后上传到linux中,准备开始安装

  Oracle 11g>  chown -R oracle:oinstall /usr/oracle_install/database
  注销root用户,改用oracle用户登录,来的database文件夹下,开始安装
  ./runinstaller

  这里注意一下,如果是用root用户通过su切换到oracle用户的话,在“检查监视器”这一项可能无法通过,会显示以下警告
  检查监视器: 监视器配置至少必须显示 256 种颜色
  >>> 无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。 未通过   Copyright (c) 1982, 2009, Oracle.All rights reserved.
  SQL> conn /as sysdba   //连接数据库
  Connected to an>//oracle实例未开启
  SQL> startup
  ORACLE instance started.
  Total System Global Area238530560 bytes

  Fixed>
  Variable>  Database Buffers          113246208 bytes
  Redo Buffers                2310144 bytes
  Database mounted.
  Database opened.
  SQL> conn /as sysdba
  Connected.
  SQL> create table testUser(>//创建表
  Table created.
  SQL> insert into testUser values(0,'mike');   //创建记录
  1 row created.
  SQL> select * from testUser;

  >  ---------- ----------
  0 mike
  关闭数据库
  SQL>shutdown immediate
  SQL>quit
  以上现象说明oracle已经安装成功,也可以通过web页面访问oracle数据库
  首先在命令行输入emctl start dbconsole开启控制台服务
  在浏览器上输入https://X.X.X.X:1158/em即可访问(X.X.X.X是服务器IP),用户名和口令即创建数据库时创建的用户名(SYS、SYSTEM等)。


  至此oracle安装完成,希望通过此教程,我们都能够在安装的过程中少走弯路。呵呵,大家都这么忙,时间耗不起呵~

页: [1]
查看完整版本: Oracle笔记(一)RHEL5.7十步安装Oracle11g R2