400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

MySQL-MMM实现MySQL高可用-创新互联

  • MMM (Master-Master replication manager for MySQL,MySQL 主主复制管理器)是一套支持双主故障切换和双主日常管理的脚本程序。MMM 使用 Perl 语言开发,主要用来监控和管理 MySQL Master-Master(双主)复制,虽然也叫双主复制,但是业务上同一时刻只允许对一个主进行写入,另一台备选主上提供部分读服务,以加速在主主切换时备选主的预热,可以说 MMM 这套脚本程序一方面实现了故障切换的功能,另一方面其内部附加的工具脚本也可以实现多个 Slave 的 read 负载均衡。

    龙华网站建设公司成都创新互联,龙华网站设计制作,有大型网站制作公司丰富经验。已为龙华1000多家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的龙华做网站的公司定做!
  • MMM提供了自动和手动两种方式移除一组服务器中复制延迟较高的服务器的虚拟 ip,同时它还可以备份数据,实现两节点之间的数据同步等。由于 MMM 无法完全保证数据的一致性,所以 MMM 适用于对数据的一致性要求不是很高,但是又想大程度的保证业务可用性的场景。对于那些对数据的一致性要求很高的业务,非常不建议采用 MMM 这种高可用架构。

  • 关于 MMM 高可用架构的说明如下:
    mmm_mon:监控进程,负责所有的监控工作,决定和处理所有节点角色活动。此脚本需要在监管机上运行。
    mmm_agent:运行在每个 MySQL 服务器上的代理进程,完成监控的探针工作和执行简单的远端服务shezhi.cijiaoben需要在被监管机上运行。
    mmm_control:一个简单的脚本,提供管理 mmm_mond 进程的命令。
    mysql-mmm 的监管端会提供多个虚拟 IP (VIP),包括一个可写 VIP,多个可读 VIP,通过监管的管理,这些 IP 会绑定在可用 MySQL 之上,当某一台 MySQL 宕机时,监管会将 VIP 迁移至其他 MySQL。

部署环境

主机 操作系统 IP地址 VIP地址
mysql-m1主服务器CentOS 7.4 x86_64192.168.100.200192.168.100.100(Writer)
mysql-m2主服务器CentOS 7.4 x86_64192.168.100.201192.168.100.100(Writer)
mysql-monitorCentOS 7.4 x86_64192.168.100.204
mysql-m3从服务器CentOS 7.4 x86_64192.168.100.202192.168.100.101(Reader)
mysql-m4从服务器CentOS 7.4 x86_64192.168.100.203192.168.100.102(Reader)

开始部署

  1. 搭建ALI云源,安装epel-release源。

    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo    #下载ALI云源
    yum -y install epel-release    #安装epel-release源
    yum clean all && yum makecache    #清空缓存,生成新的缓存文件
  2. 安装 MariaDB 数据库,开启服务(和MySQL同源,搭建步骤相同)

    yum -y install mariadb-server mariadb
    systemctl stop firewalld.service
    setenforce 0
    systemctl start mariadb
  3. 修改数据库主配置文件,发往其他主机并启动服务器
    # vim /etc/my.cnf
    [mysqld]
    log_error=/var/lib/mysql/mysql.err    #错误日志文件位置
    log=/var/lib/mysql/mysql_log.log    #访问日志文件位置
    log_slow_queries=/var/lib/mysql_slow_queris.log    #慢日志文件位置
    binlog-ignore-db=mysql,information_schema    #不生成二进制文件的库
    character_set_server=utf8    #使用的字符集
    log_bin=mysql_bin    #二进制日志文件功能
    server_id=1
    log_slave_updates=true    #开启同步
    sync_binlog=1
    auto_increment_increment=2
    auto_increment_offset=1
    # scp /etc/my.cnf root@192.168.100.201:/etc
    # scp /etc/my.cnf root@192.168.100.202:/etc
    # scp /etc/my.cnf root@192.168.100.203:/etc
    # 注:另外三台主机的配置文件里的server_id要做修改,保证不一致即可

至此,MySQL-MMM已经部署成功,进一步的话,我们可以结合Amoeba实现读写分离,Writer 的虚拟VIP可以写入数据库,而 Reader 可以用来读取数据。并通过Keepalived对 monitor 服务器进行双机热备。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:MySQL-MMM实现MySQL高可用-创新互联
当前地址:http://mzwzsj.com/article/dsseco.html

其他资讯

让你的专属顾问为你服务