Microsoft Azure部署MYSQL-MMM(1)安装MYSQL

MMM即Master-Master Replication Manager for MySQL(mysql主主复制管理器)关于mysql主主复制配置的监控、故障转移和管理的一套可伸缩的脚本套件(在任何时候只有一个节点可以被写入),这个套件也能对居于标准的主从配置的任意数量的从服务器进行读负载均衡,所以你可以用它来在一组居于复制的服务器启动虚拟ip,除此之外,它还有实现数据备份、节点之间重新同步功能的脚本。

MySQL本身没有提供replication failover的解决方案,通过MMM方案能实现服务器的故障转移,从而实现mysql的高可用。

MMM项目来自 Google:http://code.google.com/p/mysql-master-master

官方网站为:http://mysql-mmm.org

Mmm主要功能由下面三个脚本提供

l         mmm_mond  负责所有的监控工作的监控守护进程,决定节点的移除等等

l         mmm_agentd  运行在mysql服务器上的代理守护进程,通过简单远程服务集提供给监控节点

l         mmm_control  通过命令行管理mmm_mond进程

在两个节点的master-master环境下,MMM使用5个IP。每个单独的节点使用一个固定IP,这个固定IP永远不会变化。

2个reader IPs(read-only)和一个writer IP(updates),后面三个IP(2个reader IP和一个Writer IP)在两个节点之间迁移,如何迁移取决于节点的可用性。

正常情况下(没有复制失败,没有复制延迟等)活动的master有两个虚拟ip(reader和writer),备用的master有一个虚拟ip(reader),如果活动的master失败了,那么所有的reader和writer虚拟IP都会被分配给备用的master。

具体的配置信息如下所示:

角色                    ip地址          主机名字                server-id

monitoring           10.0.0.6         monitor                      -

master1              10.0.0.4         db1                      1

master2              10.0.0.5         db2                      2

slave1               10.0.0.7         db3                      3

业务中的服务ip信息如下所示:

ip地址                  角色                    描述

10.0.0.80           write           应用程序连接该ip对主库进行写请求

10.0.0.90            read            应用程序连接该ip进行读请求

10.0.0.100            read            应用程序连接该ip进行读请求

部署架构如下图:

MySQL-MMM优缺点

优点:高可用性,扩展性好,出现故障自动切换,对于主主同步,在同一时间只提供一台数据库写操作,保证的数据的一致性。

缺点:Monitor节点是单点,可以结合Keepalived实现高可用。

具体的部署步骤如下:

(1)主机配置

在Azure中创建一个虚拟网络,然后在库中创建虚拟机,选择基于CENTOS Openlogic 6.5

PS:由于MMM的监控机制需要检查PING,请确保所有虚拟机在一个VNET下。

同时完成四台虚拟机的创建,分别是master1、master2、slave、monitor,如下图:

使用那个Xshell连接到VM

首先获取root权限并修改root密码,如下操作

Sudo su -

输入密码

Passwd root

在每一台服务器上用yum命令安装MYSQL服务

# yum install mysql-server

安装完成后重启MYSQL服务

# service mysqld restart

连接到mysql,修改mysql root密码,如下操作:

# mysql -uroot

use mysql

update user set password=password(‘[email protected]‘) where user=‘root‘;

flush privileges;

select user,host,password from mysql.user

时间: 2024-10-17 19:38:36

Microsoft Azure部署MYSQL-MMM(1)安装MYSQL的相关文章

七夕Azure来相会,《Microsoft Azure部署与管理指南》亚马逊8月20日首发!

七夕Azure来相会,<微软云计算:Microsoft Azure部署与管理指南>亚马逊8月20日首发 "Azure传情,有书相伴,不羡鸳鸯,不羡仙".2015年8月20日农历七月初七,是中国传统节日七夕节.说到七夕节,很多人都会想起牛郎织女的传说吧,七夕节也是中国传统的情人节,很多人都在期待着七夕节的到来.在这浪漫的节日里,由电子工业出版社出版的<微软云计算:Microsoft Azure部署与管理指南>(ISBN: 9787121263156)在亚马逊网上商

MySQL基础知识-安装MySQL

昨天去参加了一个面试,公司不太大,是一家日资企业,在国内有几家分公司,面试官问到了MySQL的基本操作和性能优化,说了一大堆,倒是比较轻松的过了,但是面试结束之后,想了一下,基本操作忘的还是挺多,比如说sql的嵌套,主要是时间长了不用了,写后台的时候直接用hibernate,mybatis等数据持久层框架了.老师以前教过SQLServer,记得那时学的还不错,学的都是标准的sql,可以在各种支持sql的数据库系统中运行,老师还经常出超难的题来考我们,不过好像我都能做出来,那时候还挺傲娇的 Ope

【mysql】windows7 安装 Mysql

From: http://jingyan.baidu.com/article/e52e3615a1128c40c70c5174.html 安装(解压) ZIP Archive版是免安装的.只要解压就行了.和安装版的没什么不同,但就是不需要安装.找到下载好的mysql-x.x.xx-winx64.zip右键选择(解压到...),找到你想安装的地方,喜欢放C:盘的就选择C:盘,不喜欢的就自己选个就是了,小编喜欢放D:盘,毕竟c:系统盘放的东西太多不好.解压完就ok了,是不是很简单?知道 ZIP Ar

MySQL初体验--安装MySQL

操作系统版本:redhat 6.7 64位 [[email protected] ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.7 (Santiago) 数据库版本:MySQL5.7 下载地址:https://downloads.mysql.com/archives/community/ 我下载的包为:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz (一)安装前的准

使用MySQL yum源安装MySQL

#首先,将MySQL Yum存储库添加到系统的存储库列表中. #在https://dev.mysql.com/downloads/repo/yum/地址中,下载mysql yum repository [[email protected] tools]# wget --no-check-certificate https://dev.mysql.com/get/mysql80-community-release-el6-3.noarch.rpm [[email protected] tools]

Microsoft Azure部署MYSQL-MMM(2)配置主主复制

(2)配置Master-Master复制 在db1(master1).db2(master2).db3(slave)上编译my.conf #vi /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql #下面为新添加的内容 default-storage-engine = innodb replicate-ignore-db = mysql binlog-ignore-db  

MySQL - Mac下安装MySQL

1. 去官网下载dmg的安装文件. 2. 下载完成后,运行安装文件,按步骤进行安装,安装完成后会弹出一个框显示临时密码! 3. 编辑~/.bashrc文件,配置快速启动/停止/重启/cdhome/别名: ## mysql [alias alias-start-mysql='sudo /usr/local/mysql-5.7.20-macos10.12-x86_64/support-files/mysql.server start'alias alias-stop-mysql='sudo /usr

python操作mysql数据库系列-安装MySql数据库

1.首先下载mysql我选择的版本是5.7.19 基于64位的windows操作系统.mysql的下载地址传送门:https://dev.mysql.com/downloads/mysql/  这里面有不同操作系统的安装包大家有需要都可以自行去下载. 具体安装如下: 1.把 mysql-8.10-winx64zip 压缩文件解压到 D:\application\mysql 目录下: 2.在  D:\application\mysql目录下新建 my.ini 配置文件: 3.用文本编辑器或其他编辑

Microsoft Azure部署MYSQL-MMM(3)配置MYSQL-MMM

(3)安装配置MYSQL-MMM 在db1.db2.db3安装MMM所需要的Perl模块(所有服务器)执行该脚本,然后 yum -y install mysql-mmm-agent来安装MMM : # rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # yum -y install mysql-mmm-agent 在Monitor节点安装mysql-mmm-monitor # y