【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

时间:2022-02-13 01:30:31

云计算时代提供了更方便可靠的IAAS,PAAS和SAAS平台。将已有或正在研发的项目迁移到云计算平台,和传统的服务器部署还是存在一些异同点。

本文手把手教你在阿里云平台快速的部署Oracle11g

  环境准备:

1. 购买阿里云ECS服务器(必须)

计费方式:可选包年包月,按量付费(用一小时算一小时价格),建议业务量较多的的,数据库要一直在线的,选包年包月。

地域选择:和你的应用服务器,最好是在同一个可用区(访问速度最快),也可以同一地域,不同可用区,用于多机房部署的情况。

CPU内存: 根据实际需要选择,但是一定要选择2682V4 和 8163这个型号的,性能最好。

【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

系统镜像:不用多说,首选CentOS 7.4 64位

存储的话:如果SSD云盘和高效云盘价格差的不多的话, 选SSD云盘,否则选高效云盘也可以。能便宜一点点,我们的Oracle会单独使用SSD云盘来存储。

【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

网络的话,选择你自己建的虚拟网络和虚拟交换机。 不清楚的话就按系统提示的默认配置即可。交换机会分给你对应的网段和IP。以便各个主机互通互联

公网IP: 设置为不分配,  我们可以随后通过动态EIP来选一个自己的公网IP

【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

然后下一步设置完密码即可,这样你的ECS云主机就建好了。

接下来我们申请一个弹性公网IP来访问服务器,申请完IP后,点后面的绑定, 绑定到刚才申请的ECS上面,这样该IP就不用收费啦。

【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

接下来我们来申请数据盘 ,打开数据-云盘页面, 申请一个和你ECS主机一个可用区的云盘。 记得一定要选SSD云盘。申请完之后,点后面的挂载到刚申请的ECS主机里面

云盘大小,根据自己的业务量来定,尽量创建多个SSD云盘来给Oracle使用,而不是选一个很大容量的单个SSD盘。

原因:单个大容量云SSD盘,读写速度为250M/s , 如果选多个,就可以进行速度叠加了, 性能更好。 尤其对于分区表存储,性能效果非常明显

【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

通过ssh登陆到ECS服务器上面,执行基本操作。

分区数据盘。 使用 fdisk /dev/vdb  (/vdc  /vdd)依次格式化自己挂载的新数据盘。一般格式化为1个分区即可,不要去弄多个分区。

格式化数据盘。使用 mkfs.ext4 /dev/vdb1 (vdc1 vdd1) 依次格式化为ext4格式。

挂载数据盘

mkdir /vsdata     新建目录
mount /dev/sdb1 /vsdata    挂载目录  
echo "/dev/sdb1 /vsdata ext4 defaults 1 2" >> /etc/fstab    开机自动挂载

新建SWAP分区。 阿里云的ECS默认是不启用swap分区的,但是安装Oracle又必须要这个分区。那我们就来创建一个。

dd if=/dev/zero of=/mnt/swap bs=1M count=1024   大小是 bs*count的值 , 当前我们创建1G的swap空间。其实这部分空间也基本用不到,

格式化swap分区  mkswap /mnt/swap

启用swap分区   swapon /mnt/swap

开机自动启动   echo "/mnt/swap swap swap defaults 0 0" >> /etc/fstab

阿里云ECS的策略是对swap的使用率是0%,可以根据实际情况来调整使用频率参数。如果内存够大的话,建议还是不要使用swap

# vim /etc/sysctl.conf
vm.swappiness=10
# sysctl -p

添加Oracle的主机名到Hosts,确保ping主机名可以正常访问

echo "192.168.0.191 oracle" >> /etc/hosts

到此为止,我们的主机环境已经全部配置完成。

  Oracle一键安装:

通过ssh登陆到ECS服务器上面,执行一键安装脚本

curl https://code.aliyun.com/xilo/repo/raw/master/shell/oracle/11.2.0.4/oracle_config.sh | sh

该脚本为本人编写,可直接查看内容并 一键执行安装。

默认安装为 /opt/oracle ,也可以单独执行路径参数 ,如  oracle_config.sh /home/oracle   这样就安装到你指定的目录下了

脚本内容主要为    1. 安装支持包  2.添加oracle用户及组 (root切换oracle不需要密码,所以未设置密码)  3. 修改内核及网络参数  4.添加oracle环境变量

下载 Oracle静默安装模板

wget https://code.aliyun.com/xilo/repo/raw/master/shell/oracle/11.2.0.4/db_install.rsp

下载后,如果需要,可以修改对应的参数配置

ORACLE_HOSTNAME=oracle      #对应之前设置的hosts主机名

安装路径为 /opt/oracle   如果自己修改了自定义路径,可以批量替换里面的  /opt/oracle 为你实际的路径。 默认可以不用理会

oracle.install.db.config.starterdb.SID=orcl     # SID为默认的orcl  也可以根据你的喜好自行修改

oracle.install.db.config.starterdb.memoryLimit=512  # Oracle可用的系统内存, 一般设置为总内存的 80%。

oracle.install.db.config.starterdb.password.ALL  # DBA的密码,8位长度+大小写

oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=/vsdata/oracle/oradata  #数据目录 ,修改为刚才ECS新增的SSD云盘

oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=/vsdata/oracle/fast_recovery_area #闪回目录  ,修改为刚才ECS新增的SSD云盘

上传Oracle11.2.0.4的安装包到ECS服务器    p13390677_112040_Linux-x86-64_1of7.zip   p13390677_112040_Linux-x86-64_2of7.zip

安装解压缩软件    yum install -y unzip

解压缩  unzip p13390677_112040_Linux-x86-64_1of7.zip  unzip p13390677_112040_Linux-x86-64_2of7.zip

记得给挂载进来的数据目录授权。 chown -R oracle:oinstall /vsdata

然后进入解压缩出来的  database目录,切换到Oracle用户执行。  su oracle

./runInstaller -silent -ignoreSysPrereqs -showProgress -responseFile /opt/db_install.rsp 开始命令行安装

【教你玩转云计算】在阿里云一键安装快速部署Oracle11g

安装完后,切换到root 执行配置脚本即可

1. /opt/app/oracle/oraInventory/orainstRoot.sh

2. /opt/app/oracle/product/11.2.0.1/db_1/root.sh

配置Oracle自动启动,这部分也可以放到一键脚本里面,因为每个人的要求不一样,所以单独提出来,根据需要配置。

1. vi /etc/oratab   将 oracle的:N  改为  :Y

2. vi /etc/rc.d/rc.local  增加

su oracle -lc "/opt/oracle/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start"
su oracle -lc "/opt/oracle/app/oracle/product/11.2.0/dbhome_1/bin/dbstart"

3. 授予可执行权限   chmod +x /etc/rc.d/rc.local

到此为止,我们的Oracle快速安装全部完成。

整体来看,在有ECS服务器的前提下,只用配置下Oracle的密码参数即可快速安装。当然一键安装脚本也支持实体机和自己的开发服务器安装。