gdrocket 发表于 2018-9-22 11:16:23

Redhat 5.5 安装oracle 11G

  安装前准备工作:
  1、检查下列包是否安装,若未安装则要先安装:
  binutils-2.17.50.0.6-2.el5
  compat-libstdc++-33-3.2.3-61
  elfutils-libelf-0.125-3.el5
  elfutils-libelf-devel-0.125
  glibc-2.5-12
  glibc-common-2.5-12
  glibc-devel-2.5-12
  gcc-4.1.1-52
  gcc-c++-4.1.1-52
  libaio-0.3.106
  libaio-devel-0.3.106
  libgcc-4.1.1-52
  libstdc++-4.1.1
  libstdc++-devel-4.1.1-52.e15
  make-3.81-1.1
  sysstat-7.0.0
  unixODBC-2.2.11
  unixODBC-devel-2.2.11
  检查发现以下软件包未安装:
  libaio-devel-0.3.106-5.i386.rpm
  sysstat-7.0.2-3.el5_5.1.i386.rpm
  unixODBC-2.2.11-7.1.i386.rpm
  unixODBC-devel-2.2.11-7.1.i386.rpm
  安装软件包
  rpm -ivh libaio-devel*.rpm sysstat-7.0.2-3*.rpm unixODBC-2.2.11-7.1.i386.rpm unixODBC-devel-2.2.11-7.1.i386.rpm
  2> 检查内存与虚拟内存
  # free
  total       used       free   shared    buffers   cached
  Mem:      681540   415396   266144          0       4612   310660
  -/+ buffers/cache:   100124   581416
  Swap:      2048276         84    2048192
  3> 检查磁盘空间
  # df -h

  Filesystem         >  /dev/sda3            18G5.3G   12G33% /
  /dev/sda1             190M   12M169M   7% /boot
  tmpfs               333M   0333M   0% /dev/shm
  4> 查看系统版本
  # uname -a
  Linux node1.cn1 2.6.18-194.el5 #1 SMP Tue Mar 16 21:52:43 EDT 2010 i686 i686 i386 GNU/Linux
  5> 配置主机名
  # cat /etc/hosts
  # Do not remove the following line, or various programs
  # that require network functionality will fail.
  127.0.0.1 localhost.localdomain localhost
  ::1localhost6.localdomain6 localhost6
  192.168.1.201 node1.cn node1
  # cat /etc/sysconfig/network
  NETWORKING=yes
  NETWORKING_IPV6=no
  HOSTNAME=node1.cn
  GATEWAY=192.168.1.254
  6> 创建安装用户与组 安装目录
  # groupadd -g 1001 oinstall
  # groupadd -g 1002 dba
  # useradd -u 1001 -g oinstall -G dba oracle
  # 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.
  # mkdir -p /u01/app/oracle//软件安装目录
  # chown -R oracle:oinstall /u01
  # mkdir -p /opt/oradata                      //oracel 数据存放目录
  # chown -R oracle:oinstall /opt
  # chmod -R 775 /opt/
  7> 修改系统内核参数:
  # vi /etc/sysctl.conf
  ===========================================
  kernel.shmall = 2097152
  kernel.shmmax = 536870912                        //物理内存1半
  kernel.shmmni = 4096
  kernel.sem = 250 32000 100 128
  fs.aio-max-nr = 1048576
  fs.file-max = 65536
  net.ipv4.ip_local_port_range = 1024 65000
  net.core.rmem_default = 1048576                  //1M
  net.core.rmem_max = 1048576
  net.core.wmem_default = 262144                   //256K
  net.core.wmem_max = 262144
  # /sbin/sysctl -p             //使内核参数即使生效
  net.ipv4.ip_forward = 0
  net.ipv4.conf.default.rp_filter = 1
  net.ipv4.conf.default.accept_source_route = 0
  kernel.sysrq = 0
  kernel.core_uses_pid = 1
  net.ipv4.tcp_syncookies = 1
  kernel.msgmnb = 65536
  kernel.msgmax = 65536
  kernel.shmall = 2097152                        //可用共享内存的总量,单位是页,在32位系统上一页等于4kB,也就是4096字节
  kernel.shmmax = 536870912                        //单个共享内存段的最大值,此值一般为物理内存的一半,不过大一点也没关系
  kernel.shmmni = 4096
  kernel.sem = 250 32000 100 128                   //设置的信号量,这4个参数内容大小固定
  fs.file-max = 65536                              //文件句柄的最大数量。文件句柄表示在Linux系统中可以打开的文件数量
  fs.aio-max-nr = 1048576                        //文件系统最大异步io
  net.ipv4.ip_local_port_range = 9000 65500      //应用程序可使用的IPv4端口范围
  net.core.rmem_default = 1048576
  net.core.rmem_max = 1048576                      //接收套接字缓冲区大小的最大值
  net.core.wmem_default = 262144
  net.core.wmem_max = 262144                     //发送套接字缓冲区大小的最大值
  8> 设置oracle使用的文件数权限
  # vi /etc/security/limits.conf
  oraclesoft    nproc   2047
  oraclehard    nproc   16384
  oraclesoft    nofile1024
  oraclehard    nofile65536
  9> 用户界面安全设置
  # vi /etc/pam.d/login
  session    required   /lib/security/pam_limits.so
  session    required   pam_limits.so
  10> 用户访问端口范围设置
  # vi /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
  11> 设置用户环境变量
  # su - oracle
  $ vi .bash_profile
  export ORACLE_BASE=/u01/app/oracle
  export ORACLE_HOME=$ORACLE_BASE/product/11g
  export ORACLE_SID=orcl
  export ORACLE_OWNER=oracle
  export ORACLE_TERM=vt100
  export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
  export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
  LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
  export LD_LIBRARY_PATH
  CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
  CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib

  export>  $ source .bash_profile   //使环境变量即使生效
  12> 准备进入界面安装程序
  # xhost +
  access control disabled, clients can connect from any host
  # su - oracle
  $ cd /opt/database/               //进入安装文件存储目录
  $ ls
  docinstallresponserpmrunInstallersshsetupstagewelcome.html
  $ ll                              //查看安装文件是否有执行权限
  total 40
  drwxr-xr-x 12 root root 4096 Aug 172009 doc
  drwxr-xr-x4 root root 4096 Aug 142009 install
  drwxrwxr-x2 root root 4096 Aug 142009 response
  drwxr-xr-x2 root root 4096 Aug 142009 rpm
  -rwxr-xr-x1 root root 4352 Aug 142009 runInstaller
  drwxrwxr-x2 root root 4096 Aug 142009 sshsetup
  drwxr-xr-x 14 root root 4096 Aug 142009 stage
  -rw-r--r--1 root root 5400 Aug 182009 welcome.html
  $ ./runInstaller                   //执行安装程序包
  .............
  $ sqlplus / as sysdba

  SQL*Plus:>  Copyright (c) 1982, 2009, Oracle.All rights reserved.

  Connected to an>  SQL> startup
  ORACLE instance started.
  Total System Global Area418484224 bytes

  Fixed>
  Variable>  Database Buffers   134217728 bytes
  Redo Buffers      6103040 bytes
  Database mounted.
  Database opened.
  SQL> select instance_name,status from v$instance;
  INSTANCE_NAMESTATUS
  ---------------- ------------
  ora11g   OPEN
  SQL> shutdown immediate;
  Database closed.
  Database dismounted.
  ORACLE instance shut down.
  设置 Oracle11g 自动随系统启动
  $ vi/etc/oratab
  ora11g:/u01/app/oracle/11g:y         //重启动标志设置成 'Y'
  $vi /u01/app/oracle/11g/bin/dbstart
  ORACLE_HOME_LISTNER=$1    修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME
  $vi /u01/app/oracle/11g/bin/dbshut
  ORACLE_HOME_LISTNER=$1    修改为 ORACLE_HOME_LISTNER=$ORACLE_HOME
  创建一个oracle启动文件:
  # cat /etc/init.d/oracle
  #!/bin/sh
  # chkconfig: 345 61 61            //这里头4项的设置与添加到系统服务有关系,设置不正确会导致找不到服务
  # description: Oracle 11g AutoRun Services
  # /etc/init.d/oracle
  #
  # Run-level Startup script for the Oracle Instance, Listener, and
  # Web Interface
  export ORACLE_BASE=/u01/app/oracle
  export ORACLE_HOME=$ORACLE_BASE/11g
  export ORACLE_SID=ora11g
  export PATH=$PATH:$ORACLE_HOME/bin
  ORA_OWNR="oracle"
  # if the executables do not exist -- display error
  if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
  then
  echo "Oracle startup: cannot start"
  exit 1
  fi
  # depending on parameter -- startup, shutdown, restart
  # of the instance and listener or usage display
  case "$1" in
  start)
  # Oracle listener and instance startup
  su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
  echo "Oracle Start Succesful!OK."
  ;;
  stop)
  # Oracle listener and instance shutdown
  su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
  echo "Oracle Stop Succesful!OK."
  ;;
  reload|restart)
  $0 stop
  $0 start
  ;;
  *)
  echo $"Usage: `basename $0` {start|stop|reload|reload}"
  exit 1
  esac
  exit 0
  #chmod 750 /etc/init.d/oracle             //赋于文件执行的权限
  #ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
  #ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
  #chkconfig --level 345 oracle on          //设置启动
  #chkconfig --add oracle                   //将程序添加到系统服务
  #chkconfig --list oracle
  ora11g          0:off 1:off 2:off 3:on 4:on 5:on 6:off
  #reboot                                 //重启测试
  # ps -ef |grep ora                        //检查进程情况 或者直接登录数据库
  $lsnrcl status                            //检查监听

页: [1]
查看完整版本: Redhat 5.5 安装oracle 11G