在国际版的Microsoft Azure上,MySQL服务是与ClearDB合作运营的。由于ClearDB无法在中国地区提供服务,因此微软中国的研发团队开发了专门面向中国市场的MySQL Database on Azure服务。
MySQL Database on Azure是一个DaaS服务(Database as a Service)。开发者不再需要使用虚拟机来搭建MySQL服务器,也不需要考虑使用什么样的方案来实现高可用。与在虚拟机上部署MySQL服务相比,MySQL Database on Azure有很大的价格优势。例如:一个S2级别的MySQL服务,每月的价格是178元。如果用虚拟机来部署MySQL服务器,即便使用基本型的A2虚拟机,每月也要654.00元,如果要使用主从复制来提升可用性的话,那么就需要再加1个虚拟机,费用翻倍(1308元/月)。这里还没有包含存储的费用(虽然Azure的存储并不贵)。
MySQL Database on Azure目前支持6个级别(版本),每个级别对应不同的处理能力。MySQL Database on Azure根据ASDB基准测试来定义每个级别的性能(处理能力)。此外,不同级别服务的“最大同时连接数据”也是不一样的。
MySQL Database on Azure支持slave模式,即:作为on-premises部署的备份库来使用,无论master库是部署在物理服务器中还是部署在Windows Azure的虚拟机中。如果用户因为某些原因不能或者不愿意放弃on-premises部署的话,MySQL Database on Azure的slave模式是非常有用的。
MySQL Database on Azure支持5.5和5.6两个版本,用户在做数据库迁移时需要注意版本兼容性。MySQL Database on Azure的价格中包含了100GB数据库和30天的备份。如果数据大小超过100GB,则需要给Windows Azure技术支持提交工单进行扩容(会产生一些额外的存储费用)。这个定价体系在国内的公有云RDS服务中是非常有竞争力的。
默认情况下,MySQL Database on Azure是不允许从公网访问的,若要通过公网访问(管理)MySQL服务,则需要设置白名单。如果用户(管理员)通过NAT上网,并且NAT设备上配置了地址池,这种情况下出口IP地址可能是不固定的(小区宽带也是类似的情况),因此白名单也就无效了。应对方案是:使用支持SSH转发的客户端管理工具,通过Windows Azure上的Linux虚拟机进行SSH转发连接到MySQL服务。此外,用户使用Windows Azure的point to site VPN时,依然要设置MySQL Database on Azure的白名单才能访问(管理)MySQL服务,因为point to site VPN的公网流量依然是走客户端的路由(互联网出口)。
MySQL Database on Azure的用户中会包含一个百分号(%),通常情况下是没有问题的。但有些旧版本的管理工具和framework偶尔会发生兼容性问题。请参考:http://www.cnblogs.com/hunterxue/p/4848544.html
由于MySQL Database on Azure是一个DaaS服务,因此也就不可能像使用on-premises部署一样的随心所欲。具体请参考官方文档:http://www.windowsazure.cn/documentation/articles/mysql-database-operation-limitation
可供用户配置的参数列表:http://www.cnblogs.com/hunterxue/p/4848580.html
用户在使用过程中,如果需要额外调整某些参数,可以尝试联系Windows Azure技术支持获取帮助。