阿里云部署oracle 11g数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阿里云部署oracle 11g数据库相关的知识,希望对你有一定的参考价值。

程序员在阿里云部署了一套oracle 11g,老板说他们搞了好几天,监听一直启动不来,让我给看看。登上去一瞧,原来是主机名设置的问题(把阿里云的弹性ip直接写在/etc/hosts文件,而云主机的网卡地址一般是私有地址)。这个事情,我还专门发了一篇文章,地址为http://blog.51cto.com/sery/2084706 。修复完这个问题以后,觉得直接把数据库这样放在公网上很不妥当,通时又发现其它一些问题,比如磁盘空间规划不合理、混装java等。于是建议把此机作为测试环境,另购几台云主机,放入vpc网络,重新部署应用和数据库,把数据库与其它应用独立开来。


都怪我多事,只好亲自操刀,重新在云上给部署oracle了。本人从来不推荐在公有云部署oracle,主要原因有以下几点:

 1、云主机没有交换分区swap,了解好几家服务商,都是这样呢!

 2、云服务器的操作系统可定制性不灵活。在我的经验中,oracle 11g部署在centos5这样的操作系统上,不会有依赖问题,而在centos6 以上版本,一些依赖包在安装oracle过程中,校验就会出错。

 3、云主机性能问题。一般情况下,我们都会选很高配置的物理服务器来部署。

  

在公有云部署oracle,尽管别扭,但还得干活啊。虽然在安装过程中,有几个包不匹配(实际是版本高了),忽略掉这些校验,部署上去,运行好一段时间(大概1个多月),也没见看开发人员叫唤,时不时查告警日志,也未见异常,说明安装还是成功的。目前,个人手里没有线上的云服务器,这里就用虚拟环境,来还原一下整个部署过程,希望能对有需要的人有所帮助.


选购一台centos7的云主机,外加一个250G的云盘。云盘分两个区,一个用于交换分区,剩下的用作oracle的安装目录及数据存储。划分出来的数据分区,挂接到系统上。为了符合oracle的安装习惯,挂接点为/u01.

技术分享图片


在正式执行oracle的安装脚本之前,有一系列的前置操做,由于本人经常做部署,为了省事,写了一个脚本,内容为:

[[email protected] ~]# more oracle_rep.bash 

#!/bin/bash

#writed by sery 2012-05-16


#########################################

#install depending packages             #

#########################################

yum install gcc* gcc-* gcc-c++-* glibc-devel-* glibc-headers-* compat-libstdc* libstdc* elfutils-libelf-devel* libaio-devel* sysstat* unixODBC-* pdksh-*


########################################

#add groups,user and create dir        #

########################################

/usr/sbin/groupadd -g 501 oinstall

/usr/sbin/groupadd -g 502 dba



useradd -u 1000 -g oinstall -G dba oracle


mkdir /u01/app/

mkdir -p /u01/app/oraInventory

mkdir -p /u01/app/oracle

chown -R oracle:oinstall /u01/app

chmod -R 775 /u01/app


##############################################

#modify  sysctl.conf                         #

##############################################

cat >> /etc/sysctl.conf <<done

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 = 1048576

fs.aio-max-nr = 1048576

done


sysctl -p


###############################################

#modify  /etc/security/limits.conf            #

###############################################

cat >> /etc/security/limits.conf << done

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

done


################################################

#modify /etc/pam.d/login                       #

################################################

echo "session    required     pam_limits.so">>/etc/pam.d/login


################################################

# setting user oracle env                      #

################################################

cat >> /home/oracle/.bash_profile <<done

export ORACLE_SID=zyzf1

export ORACLE_UNQNAME=zyzf1

export ORACLE_base=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/11.2.0

export PATH=$ORACLE_HOME/bin:$PATH

done

授予该脚本执行权限,然后执行./oracle_rep.bash。执行完毕,挨个检查一下,看是否生成目录、是否创建了用户、是否修改了相关配置文件....


接下来,配置和启用vnc,以图形方式来远程安装oracle。物理服务器时代,我们还可能去机房,做在物理服务器前边,接上显示器。但用了云主机以后,这个路没有了哟,当然也算解放了,不用去机房接受噪音和辐射嘛!


云主机安装的centos可能没有默认安装vnc服务,

以上是关于阿里云部署oracle 11g数据库的主要内容,如果未能解决你的问题,请参考以下文章

阿里云服务器安装oracle11g——会用的到,建议收藏

阿里云上Oracle 11g RAC安装配置手册

阿里云Oracle11g静默安装配置

阿里云CentOS7安装oracle 11g过程详解

CENTOS7.3(阿里云)静默安装ORACLE11g

阿里云ESSD RAC11g搭建