步骤一、安装VMware Tools:

全屏界面安装oracle更为方便。
①umount   /media/CentOS 7 x86_64
②VMware——虚拟机选项——安装tools
③自动挂载
④进入  /media/VMware\ Tools/解压该目录下的压缩包放到指定目录下:
    tar  zxvf  vmwaretools-10.1.6-5214329.tar.gz  -C  /tmp/
⑤进入/tmp/目录,压缩包解压生成目录:vmware-tools-distrib/执行该目录下文件:
    ./vmware-install.pl【安装,一直回车直到结束】
⑥安装好,重新启动:init  3——init  5
⑦Ctrl+Alt+enter进入全屏界面

步骤二、安装Oracle:

(1)将这两个包拷贝到虚拟机上:

    p13390677_112040_Linux-x86-64_1of7

    p13390677_112040_Linux-x86-64_2of7

(2)执行orainst_11g自动化安装脚本前的准备工作:

    ①首先配置好yum源

vim /etc/yum.repos.d/base.repo
    [base]
    name=Centos
    baseurl=http://172.17.0.1/centos/CentOS-6.9-x86_64/
    gpgcheck=0
    [epel]
    name=EPEL
    baseurl=http://172.17.0.1/fedora-epel/6/x86_64/
    gpgcheck=0
    enable=1


②解压两个压缩包:

    oracle安装包解压后生成的database目录放置到/root下。

    查看database目录下内容:

centos6下安装oracle_安装_02

③保证网上的ip地址为静态,设置如下:

 #vim ifcfg-eth0
    DEVICE=eth0
    ONBOOT=yes
    BOOTPROTO=static
    IPADDR=172.17.151.127  
    PREFIX=16
    DNS1=172.17.0.1  
    #vim ifcfg-eth1
    DEVICE=eth1
    TYPE=Ethernet
    ONBOOT=yes
    BOOTPROTO=none
    IPADDR=192.168.41.129
    PREFIX=24
    HWADDR=00:0C:29:EB:72:4C

 ④主机名要可以解析:ip地址与主机名写入/etc/hosts。

 vim /etc/hosts
    192.168.41.129  centos6.localdomain

 注意:这个脚本针对企业版6的11g安装,不适用于12g,或者是centos7

(3)执行脚本:./orainst_11g。

(4)脚本执行后,database目录内容复制到oracle目录下的strange目录下

【脚本有bug,没有全复制过来,所以手动将/root/database/下内容复制过来】

(5)切换oracle用户:

     xhost  +
    su - oracle

(6)进入database下,执行脚本runinsatll。开始进行oracle安装。

(7)安装过程需要注意的地方:

    ①安装到check部分,

        错误1:缺少软件包

            解决:下载pdksh-5.2.14-30.x86_64.rpm包到虚拟机

                rpm -e ksh

                rpm -ivh pdksh-5.2.14-30.x86_64.rpm

                yum install ksh

        错误2:内核参数不匹配

          解决: 修改内核参数:vim /etc/sysctl.conf

                kernel.shmmax = 1043634176

                生效: sysctl -p

    ②继续执行到该处,需要打开一个新的终端,在root用户下,执行两个脚本:

      . /u01/app/oracle/11.2.0/db_1/root.sh

     . /u01/app/oraInventory/orainstRoot.sh

centos6下安装oracle_安装_04

 (8)安装成功。

步骤三、安装oracle数据库:

(1)切换到oracle用户下,执行dbca,开始安装oracle数据库,保证是图形化界面。

    xhost  +
    su  -  oracle
    dbca

(2)运行到此步骤,执行以下命令,开启进程。

     su - oracle
    lsnrctl start
    netstat -tulnpa |grep -w 1521


centos6下安装oracle_oracle_05      

(3)安装过程大致选择步骤如下。

centos6下安装oracle_centos6 _06

centos6下安装oracle_centos6 _07

centos6下安装oracle_centos6 _08

 (4)安装完成,登录如下所示,则安装成功。

centos6下安装oracle_oracle_09

(5)登录oracle,发现oracle不支持上下翻历史记录功能和删除操作,需要安装rlwrap包。

①在root用户下:
    rpm -ivh rlwrap-0.37-1.el6.x86_64.rpm
②切换到oracle下:
    su - oracle
    rlwrap sqlplus / as sysdba,如此登录即可支持历史功能和删除功能。
③可以定义别名,方便登录
    vim .bash_profile
    alias sqlplus='rlwrap sqlplus'
④生效: . .bash_profile
⑤再登录执行sqlplus / as sysdba即可。

附加:orainst_11g自动化安装脚本

#!/bin/bash
PKG="
unixODBC
unixODBC-devel
binutils
compat-libstdc++-33
elfutils-libelf
elfutils-libelf-devel
elfutils-libelf-devel-static
gcc
gcc-c++
glibc
glibc-common
glibc-devel
glibc-headers
kernel-headers
ksh
libaio
libaio-devel
libgcc
libgomp
libstdc++
libstdc++-devel
make
numactl-devel
sysstat
"
PACKINSTALL=

for PACKAGE in $PKG ;do
    rpm -q $PACKAGE || PACKINSTALL="$PACKINSTALL $PACKAGE"
done
echo
if [ -z "$PACKINSTALL" ];then
   true
  else
   echo "The followling packages will be install: $PACKINSTALL "
   read -p "Continue? (y/N): " answer
   case $answer in
        ([yY]|[Yy][Ee][Ss])
             echo 1
             yum -y install $PACKINSTALL ;;
        (*);;
   esac
fi

cat /etc/group |grep oinstall &> /dev/null || /usr/sbin/groupadd oinstall
cat /etc/group |grep dba &> /dev/null || /usr/sbin/groupadd dba

id oracle &> /dev/null 
	if [ $? = 0 ];then
	 groups oracle | grep dba &> /dev/null || /usr/sbin/usermod -g oinstall -G dba oracle
	else
	 /usr/sbin/useradd -g oinstall -G dba oracle
	 echo oracle |passwd --stdin oracle
	fi

KELNUM=$(cat /etc/sysctl.conf |grep -v ^# |grep -v ^$ |grep -E "fs.aio-max-nr|fs.file-max|kernel.shmall|kernel.shmmax|kernel.shmmni|kernel.sem|net.ipv4.ip_local_port_range|net.core.rmem_default|net.core.rmem_max|net.core.wmem_default|net.core.wmem_max" |awk '{print $1}' |sort -u |wc -l )

if [ $KELNUM -lt 11 ];then
cat >> /etc/sysctl.conf <<EOF
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
EOF
/sbin/sysctl -p
fi


grep oracle /etc/security/limits.conf &> /dev/null 
  if [ $? != 0 ];then
cat >> /etc/security/limits.conf << EOF
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile  1024
oracle              hard    nofile  65536
oracle              soft    stack   1024
EOF
 fi

grep pam_limits.so /etc/pam.d/login &> /dev/null
  if [ $? != 0 ];then
cat >> /etc/pam.d/login <<EOF
session required pam_limits.so
EOF
  fi

[ -d /u01/app ] || ( mkdir -p /u01/app/ ; chown -R oracle:oinstall /u01/app/ ; chmod -R 775 /u01/app )

grep -i oracle ~oracle/.bash_profile &> /dev/null
  if [ $? != 0 ];then
cat >> ~oracle/.bash_profile <<EOF
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=\$ORACLE_BASE/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=\$PATH:\$ORACLE_HOME/bin
EOF
  fi


xhost +
[ -d ~oracle/database ] || mv /root/database ~oracle 
cd ~oracle;su - oracle -c 'database/runInstaller'

※仅供参考,脚本有不完善处需要注意。