我可以在Azure云服务中提供的VM上安装MySQL吗?

时间:2015-05-23 07:15:12

标签: mysql azure azure-virtual-machine azure-cloud-services

从我收集的内容来看,使用Azure网站的MySQL数据库的唯一方法是使用Cleardb,但我可以在Azure云服务中提供的虚拟机上安装MySQL。如果是这样的话?

3 个答案:

答案 0 :(得分:2)

这个问题可能会被关闭并转移到ServerFault(它真正属于的地方)。这就是说:ClearDB在Azure中提供MySQL-as-a-Service。它与您可以在自己的虚拟机中安装的内容无关。您绝对可以执行基于VM的MySQL安装(或可以在Linux或Windows上安装的任何其他数据库引擎)。实际上,Azure门户甚至在OpenSUSE上安装了MySQL tutorial

如果你指的是在web / worker角色中安装:由于以下原因,这根本不适合数据库引擎:

  • 需要在零交互的情况下完全编写脚本/自动化安装(这可能需要很长时间)。这包括每次新实例启动时,所有必要的软件下载/安装到vm映像。
  • 数据库集群可能无法应对任意横向扩展(Web / worker角色的典型用例)。当发生横向扩展时,数据库集群可能会或可能不会正常工作(添加额外的虚拟机)。缩放(删除vm)时也是如此。
  • 不太理想的附加存储配置
  • 无法使用Linux VM

因此,假设您仍然可以使用虚拟机(与无状态Cloud Service vm相比):您需要仔细规划部署,并做出如下决定:

  • Distro(Ubuntu,CentOS等)。 Azure支持的Linux发行列表here
  • 选择合适的VM大小(DS系列提供SSD附加磁盘支持; G系列扩展至448GB RAM)
  • Azure存储附加磁盘为非Premium或Premium(高级磁盘是SSD支持的,持久磁盘,每个磁盘可扩展至1TB / 5000 IOPS,每个VM最多32个磁盘,具体取决于VM大小)
  • 虚拟网络配置(适用于多节点群集)
  • 数据库群集的可访问性(无论您的应用是在vnet中还是通过公共端点访问它;如果是后者,则设置ACL&#39)
  • 备份/ HA / DR计划

其他人提到使用VM Depot中预先构建的VM映像。只要意识到,如果你走这条路,你依靠其他人为你配置数据库引擎安装。这可能是也可能不是您尝试实现的目标的最佳选择。并且图像可能与最新版本,补丁等一致,也可能不是最新版本。

当然,我所写的内容适用于您在自己的虚拟机中安装的任何数据库引擎,其中服务提供商(例如ClearDB)倾向于为您处理大部分这些事情。

答案 1 :(得分:1)

如果您正在谈论标准虚拟机,那么您可以使用pre-built images on VMDepot

如果你在谈论网络或工作者角色(PaaS),我不会推荐它,但如果你真的想要,你可以。您需要在主机上完全编写解决方案的安装脚本。唯一的缺点(也是一个很大的缺点)就是主机将被移动到某个新主机,这意味着你的MySQL数据文件会丢失 - 如果你经常备份并且很高兴丢失一些数据然后这个选项可能适合你。

答案 2 :(得分:0)

我认为,主要的问题是"你想要实现的目标?"。我认为,您希望将PaaS解决方案与Web Apps或Cloud Service一起使用,并且您需要一个MySQL数据库。如果是,您有两种选择(技术上就像David Makogon所说)。第一个是使用MySQL部署您自己的(一个)服务器并从外部(互联网端)连接到它。第二种解决方案是创建一个MySQL服务器或群集,并在Azure虚拟网络内部连接您的应用程序。使用Cloud Service它很简单,但使用Web App却不是。您必须在Azure VM中创建VPN网关,并将Web App连接到此网关。通过这种方式,您将具有从您的应用程序到您自己的MySQL集群的内部连接。