Dre*_*rew 18 mysql amazon-ec2 amazon-web-services
我如何在Amazon EC2上的云中安装MySQL 5.7?
我看到的大多数亚马逊机器实例(AMI)要么缺少任何MySQL服务器,要么拥有MySQL Server 5.5等旧版本
我想用最新最好的.
Dre*_*rew 37
这是Red Hat Enterprise Linux版本7(RHEL7)上相对快速的MySQL 5.7.14设置.
我不隶属于AWS; 我喜欢使用他们的服务.
确保您拥有AWS EC2帐户.请注意,即使亚马逊需要存档信用卡,如果您遵守其免费等级条款,第一年也不会产生任何费用.通常,这意味着一个24/7运行的单个微实例(1 Gb RAM)服务器.
步骤1:在AWS EC2上单击"启动实例",然后选择"Red Hat Enterprise Linux 7.2(HVM),SSD卷类型 - ami-775e4f16",如下图所示.请注意,可用或升级的AMI(亚马逊机器实例)的版本将随着时间的推移而旋转,这是撰写本文时.但AMI编号如上文所示.
通常,我选择Amazon Linux AMI作为我的发行版.我不再这样做,因为它是他们自己的大杂烩,并且自然不确定选择哪个包管理器,因此文件.所以我现在坚持使用RHEL.
在"选择实例类型"屏幕上,选择符合条件的免费图层实例类型,如下所示:
点击下一步.在下一个"详细信息"屏幕上,单击"下一步"接受默认值.在存储屏幕上将大小更改为16GB,然后单击"下一步".然后在标签信息上再次"下一步".接下来是"配置安全组"屏幕,如下图所示:
现在接受"创建新安全组"的单选按钮.注意SSH端口22 对具有CIDR的所有(Anywhere)IP地址开放.其他选项包括检测"我的IP"(如您的)或"自定义".请放心,下一个屏幕访问将根据我们将设置的安全密钥锁定.在打开的端口下有一个Add Rule按钮,用于添加MySQL 3306或HTTP 80等端口.但是现在我们将跳过它.请注意安全组名称.填写一个或立即接受默认值.正确实现这一点并不重要,因为以后可以为正在运行的实例更改安全组.单击"查看并启动".0.0.0.0/0
然后单击"启动"(不要担心,它还没有启动).如下一个屏幕显示:
请注意,由于我已经生成了一些密钥对,因此在第一个下拉列表中默认为"选择现有密钥对".否则,您使用给定的提醒名称"创建新密钥对"并继续"下载密钥对".此时,您将密钥对作为.pem文件.以最大的安全性对待它,将它保存到一个你不会失去它的地方.最好在密码保护区域,例如您的操作系统用户目录下.
当您最终在同一屏幕上单击"启动实例"时,启动将与该密钥对(刚刚创建的密钥对或预先存在的密钥对)相关.请注意,生成密钥对可能是您每年只执行一次的任务.一次又一次地重复使用密钥对,由您决定.
启动实例后,您需要大约五分钟才能生效.在Instances left菜单项下,当实例状态显示"正在运行"并且状态检查显示"2/2已通过"时,您知道实例是活动的:
还记得.pem你下载的文件吗?好吧,有一次你需要.ppk为PuTTY 创建一个文件,这是一个SSH客户端程序,它将与运行的实例进行低保密通信.为此,我们使用与PuTTY协调工作的puttygen工具.所以我们运行puttygen,加载.pem之前下载的几分钟,并.ppk使用"密钥密码" 生成文件,例如"I&love%ancHovies2_fjdi8Ha".下面是puttygen的图片:
以及标题为使用PuTTY从Windows连接到Linux实例的AWS EC2页面.步骤是文件/加载私钥.将筛选器更改为所有文件(.).找到该.pem文件.点击"打开",然后点击"确定".输入密码短语.单击"保存私钥",并将其与.ppk文件旁边的.pem文件保存在同一文件夹中.如上所述,这不是你可能会做的事,而是每年.
现在运行SSH客户端PuTTY.使用会话/主机名等
ec2-user@ec2-www-xxx-yyy-zzz.us-west-2.compute.amazonaws.com
Run Code Online (Sandbox Code Playgroud)
因此它基本上ec2-user@与EC2控制面板上的实例下的公共DNS名称连接.至于指定PuTTY .ppk文件,它看起来如下所示,.ppk文件选择在Browse按钮旁边:
返回到下面显示的Session左上层次结构,在Saved Sessions下给它一个配置文件名称,然后点击"Save".此后,当您加载PuTTY时,您只需按名称加载会话:
不要忘记,您在此处所做的就是将.ppk引用保存到友好的命名配置文件中.您可能偶尔需要更改主机名(当然,当您在EC2上保存实例映像并在后续启动时使用新的实例IP地址返回时).
好吧,这并不容易.但是它就是这样啊.
单击"打开"时,它将尝试连接到RHEL实例.在签名警告上单击是.输入先前保存的.ppk密钥密码,您应该坐在Linux提示符下.
URL02:第1章使用MySQL Yum存储库在Linux上安装MySQL
您现在已经在EC2上加载并运行了MySQL 5.7.14,其中包含数据库和用户设置.您的服务器需要成像.我在这里看到这个答案来创建图像(AMI).备份您的数据.请参阅EC2文档,例如Amazon EC2的最佳实践.
回到安全性:最佳实践肯定建议不要打开数据库以通过端口3306的安全组直接连接.如何选择遵循这一点是您的选择,例如使用PHP,Java或其他编程API.请注意,各种db客户端程序可以通过SSH工作台等SSH隧道进行连接.此外,SSH隧道存在各种开发库,但它们的开发并不容易(主要是由于困难的密钥链和缺乏广泛的开发人员经验).例如,有一个C#在这里.
此外,AWS还提供RDS和其他数据库产品,以便更少实际操作并像上面那样自行滚动.许多开发人员瞄准EC2的原因是因为您有一个完整的服务器用于其他编程计划.
如果您确实如前所述修改了安全组,请考虑使用基于CIDR条目的IP范围,并在过度暴露数据存储之前小心谨慎.或者过度授予.与内部部署工作相同的最佳实践.
关于这个MySQL部分,我的GitHub上面几张图片的注释都在这里.
geo*_*eos 18
我有同样的问题,但我不想使用Red Hat或任何其他操作系统而不是Amazon Linux AMI.所以,这是安装MySQL 5.7和升级旧版本的过程.
短路径(没有屏幕截图)
wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
yum localinstall mysql57-community-release-el6-11.noarch.rpm
yum remove mysql55 mysql55-common mysql55-libs mysql55-server
yum install mysql-community-server
service mysqld restart
mysql_upgrade -p
Run Code Online (Sandbox Code Playgroud)
长路径(带截图)
然后,您应该下载EL6 11的回购
wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
Run Code Online (Sandbox Code Playgroud)
接下来,进行本地安装:
yum localinstall mysql57-community-release-el6-11.noarch.rpm
Run Code Online (Sandbox Code Playgroud)
这可能是成功安装的关键.你应该删除以前的包,关于MySQL 5.5
yum remove mysql55 mysql55-common mysql55-libs mysql55-server
Run Code Online (Sandbox Code Playgroud)
最后,您可以安装MySQL 5.7
yum install mysql-community-server
Run Code Online (Sandbox Code Playgroud)
重新启动MySQL服务器并升级数据库
service mysqld restart
mysql_upgrade -p
Run Code Online (Sandbox Code Playgroud)
您可以通过对MySQL进行身份验证来验证安装
| 归档时间: |
|
| 查看次数: |
45772 次 |
| 最近记录: |