iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL5.7中如何安装及配置MHA架构
  • 240
分享到

MySQL5.7中如何安装及配置MHA架构

2024-04-02 19:04:59 240人浏览 八月长安
摘要

下文给大家带来有关Mysql5.7中如何安装及配置MHA架构内容,相信大家一定看过类似的文章。我们给大家带来的有何不同呢?一起来看看正文部分吧,相信看完mysql5.7中如何安装及配置MHA架构你一定会有所

下文给大家带来有关Mysql5.7中如何安装及配置MHA架构内容,相信大家一定看过类似的文章。我们给大家带来的有何不同呢?一起来看看正文部分吧,相信看完mysql5.7中如何安装及配置MHA架构你一定会有所收获。

前期准备

服务器版本:Centos linux release 7.6.1810 (Core)

mysql_mha_manager : 192.168.10.215

mysql_mha_01      : 192.168.10.216

mysql_mha_02      : 192.168.10.217

mysql_mha_03      : 192.168.10.218

 

一. 安装MHA工具

1. mysql_mha_manager云服务器

 

安装依赖

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y

yum install perl-DBD-MySQL -y

yum install perl-Config-Tiny -y

yum install perl-Log-Dispatch perl-Parallel-ForkManager -y

yum install perl-Parallel-ForkManager -y

 

安装node

rpm -ivh mha4mysql-node-0.57-0.el7.noarch.rpm

 

安装manager

rpm -ivh mha4mysql-manager-0.57-0.el7.noarch.rpm

  

2. mysql_mha_01云服务器

 

安装依赖

yum install perl-DBD-MySQL -y

 

安装node

rpm -ivh mha4mysql-node-0.57-0.el7.noarch.rpm

  

3. mysql_mha_02云服务器

 

安装依赖

yum install perl-DBD-MySQL -y

 

安装node

rpm -ivh mha4mysql-node-0.57-0.el7.noarch.rpm

 

4. mysql_mha_03云服务器

 

安装依赖

yum install perl-DBD-MySQL -y

 

安装node

rpm -ivh mha4mysql-node-0.57-0.el7.noarch.rpm

  

二. ssh免密

 

1. mysql_mha_manager

192.168.10.215

 

ssh-keygen -t rsa

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.216

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.217

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.218

  

2. mysql_mha_01

192.168.10.216

 

ssh-keygen -t rsa

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.217

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.218

 

3. mysql_mha_02

192.168.10.217

 

ssh-keygen -t rsa

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.216

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.218

 

4. mysql_mha_03

192.168.10.218

 

ssh-keygen -t rsa

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.216

ssh-copy-id -i /root/.ssh/id_rsa root@192.168.10.217

  

三. 安装mysql

 

所有机器创建帐号

groupadd mysql

useradd -g mysql mysql

 

初次启动报错

[root@mysql_mha_01 tmp]# service mysqld start

Starting MySQL.2019-03-12T14:27:25.072241Z mysqld_safe error: log-error set to '/data/mysql/logs/mysql.log', however file don't exists. Create writable for user 'mysql'.

 ERROR! The server quit without updating PID file (/data/mysql/run/mysql.pid).

解决方案:

初次启动mysql:sudo -u mysql service mysqld start

再次启动mysql:service mysqld start|stop|restart

 

四. 修改hosts文件

 

mysql_mha_01/02/03、mysql_mha_manager

 

vi /etc/hosts

 

192.168.10.216 mysql_mha_01

192.168.10.217 mysql_mha_02

192.168.10.218 mysql_mha_03

  

五. mysql主从配置

 

mysql_mha_01/02/03关闭防火墙

 

systemctl stop firewalld.service

 

1. mysql_mha_01

grant replication slave,replication client ON *.*  to 'repl'@'192.168.10.%' identified by 'repl';

flush privileges;

 

mysqldump --master-data=2 --single-transaction -uroot -p --all-databases > mysql_mha_01.sql


more mysql_mha_01.sql

CHANGE MASTER TO MASTER_LOG_FILE='mysql_mha01-bin.000003', MASTER_LOG_POS=1448;

 

scp mysql_mha_01.sql root@192.168.10.217:/tmp

 

scp mysql_mha_01.sql root@192.168.10.218:/tmp

 

2. mysql_mha_02

 

mysql -uroot -p < mysql_mha_01.sql

 

mysql -uroot -p

 

CHANGE MASTER TO MASTER_HOST='192.168.10.216',

MASTER_USER='repl', MASTER_PASSWord='repl',

MASTER_LOG_FILE='mysql_mha01-bin.000003', MASTER_LOG_POS=1448;

 

start slave;

 

show slave status\G

 

3. mysql_mha_03

 

mysql -uroot -p < mysql_mha_01.sql

 

mysql -uroot -p

 

CHANGE MASTER TO MASTER_HOST='192.168.10.216',

MASTER_USER='repl', MASTER_PASSWORD='repl',

MASTER_LOG_FILE='mysql_mha01-bin.000003', MASTER_LOG_POS=1448;

 

start slave;

 

show slave status\G

  

六. mha的manager配置文件

 

1. mysql_mha_manager云服务器

 

mkdir -p /etc/mha

 

vi /etc/mha/mha.cnf

[server default]

manager_workdir=/etc/mha/

manager_log=/etc/mha/manager.log

master_binlog_dir=/data/mysql/binlog/

user=root

password=123456

ping_interval=1

remote_workdir=/tmp

repl_password=repl

repl_user=repl

secondary_check_script= /usr/bin/masterha_secondary_check -s 192.168.10.217 -s 192.168.10.218 --user=root --master_host=192.168.10.216 --master_ip=192.168.10.216 --master_port=3306

master_ip_failover_script="/etc/mha/scripts/master_ip_failover"

#master_ip_online_change_script="/etc/mha/scripts/master_ip_online_change"

#shutdown_script=""

ssh_user=root

[server1]

hostname=192.168.10.216

port=3306

candidate_master=1

check_repl_delay=0

[server2]

hostname=192.168.10.217

port=3306

candidate_master=1

check_repl_delay=0

[server3]

hostname=192.168.10.218

port=3306

 

七. 检查SSH免密、复制状态

 

1. 检查SSH免密

masterha_check_ssh --conf=/etc/mha/mha.cnf

 

2. 检查复制

masterha_check_repl --conf=/etc/mha/mha.cnf

 

错误1

描述

Tue Mar 12 12:50:46 2019 - [info]   Connecting to root@192.168.10.217(mysql_mha_02:22)..

Can't exec "mysqlbinlog": No such file or directory at /usr/share/perl5/vendor_perl/MHA/BinlogManager.pm line 106.

mysqlbinlog version command failed with rc 1:0, please verify PATH, LD_LIBRARY_PATH, and client options at /usr/bin/apply_diff_relay_logs line 493.

 

解决方案

mysql_mha_01/02/03

ln -s /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog

  

错误2

描述

Tue Mar 12 13:13:13 2019 - [info]   Connecting to root@192.168.10.217(mysql_mha_02:22)..

mysqlbinlog: [ERROR] unknown variable 'default-character-set=utf8mb4'

mysqlbinlog version command failed with rc 7:0, please verify PATH, LD_LIBRARY_PATH, and client options at /usr/bin/apply_diff_relay_logs line 493.

 

解决方案

mysql_mha_01/02/03

修改my.cnf

[client]

#default-character-set = utf8mb4

 

错误3

描述

Testing mysql connection and privileges..sh: mysql: command not found

mysql command failed with rc 127:0!

 at /usr/bin/apply_diff_relay_logs line 375.

         main::check() called at /usr/bin/apply_diff_relay_logs line 497

         eval {...} called at /usr/bin/apply_diff_relay_logs line 475

         main::main() called at /usr/bin/apply_diff_relay_logs line 120

Tue Mar 12 13:25:40 2019 - [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln208] Slaves settings check failed!

Tue Mar 12 13:25:40 2019 - [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln416] Slave configuration failed.

Tue Mar 12 13:25:40 2019 - [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln427] Error happened on checking configurations.  at /usr/bin/masterha_check_repl line 48.

Tue Mar 12 13:25:40 2019 - [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln525] Error happened on monitoring servers.

Tue Mar 12 13:25:40 2019 - [info] Got exit code 1 (Not master dead).

 

解决方案

mysql_mha_01/02/03

ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

 

八. MHA启动与停止

 

1. 启动manager

nohup masterha_manager --conf=/etc/mha/mha.cnf< /dev/null > /etc/mha/manager.log  2>&1 &

 

2. 停止manager

masterha_stop --conf=/etc/mha/mha.cnf

 

3. 检查manager

masterha_check_status --conf=/etc/mha/mha.cnf

  

九. 测试

1. 查看状态

[root@mysql_mha_manager mha]# masterha_check_status --conf=/etc/mha/mha.cnf

mha (pid:27991) is running(0:PING_OK), master:mysql_mha_01

 

2. 关闭mysql_mha_01数据库

service mysqld stop

 

3. 查看日志和mha状态

日志

----- Failover Report -----

 

mha: MySQL Master failover mysql_mha_01(192.168.10.216:3306) to mysql_mha_02(192.168.10.217:3306) succeeded

 

Master mysql_mha_01(192.168.10.216:3306) is down!

 

Check MHA Manager logs at mysql_mha_manager:/etc/mha/manager.log for details.

 

Started automated(non-interactive) failover.

The latest slave mysql_mha_02(192.168.10.217:3306) has all relay logs for recovery.

Selected mysql_mha_02(192.168.10.217:3306) as a new master.

mysql_mha_02(192.168.10.217:3306): OK: Applying all logs succeeded.

mysql_mha_03(192.168.10.218:3306): This host has the latest relay log events.

Generating relay diff files from the latest slave succeeded.

mysql_mha_03(192.168.10.218:3306): OK: Applying all logs succeeded. Slave started, replicating from mysql_mha_02(192.168.10.217:3306)

mysql_mha_02(192.168.10.217:3306): Resetting slave info succeeded.

Master failover to mysql_mha_02(192.168.10.217:3306) completed successfully.

 

状态

[root@mysql_mha_manager mha]# masterha_check_status --conf=/etc/mha/mha.cnf

mha is stopped(2:NOT_RUNNING).

  

4. 查看 slave 状态

mysql> show slave status\G

*************************** 1. row ***************************

               Slave_IO_State: Waiting for master to send event

                  Master_Host: 192.168.10.217

                  Master_User: repl

                  Master_Port: 3306

                Connect_Retry: 60

              Master_Log_File: mysql_mha02-bin.000003

          Read_Master_Log_Pos: 154

               Relay_Log_File: mysql_mha_03-relay-bin.000002

                Relay_Log_Pos: 326

        Relay_Master_Log_File: mysql_mha02-bin.000003

             Slave_IO_Running: Yes

            Slave_SQL_Running: Yes

对于上文关于MySQL5.7中如何安装及配置MHA架构,大家觉得是自己想要的吗?如果想要了解更多相关,可以继续关注我们的数据库板块。 

您可能感兴趣的文档:

--结束END--

本文标题: MySQL5.7中如何安装及配置MHA架构

本文链接: https://www.lsjlt.com/news/36727.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql5.7安装及配置教程
    本文为大家分享了mysql安装配置教程,供大家参考,具体内容如下 一、配置MySQL数据库 1、解压绿色版mysql,并改名为mysql5.7,如下图 对比一下下图5.6以前的版本,少data目录(存放数...
    99+
    2024-04-02
  • MHA高可用架构部署以及配置(详细)
    目录 一、MHA概述 1、简介 2、MHA特点 3、何为高可用 4、故障切换过程 二、MHA高可用架构部署 1、架构图 2、 实验环境:需要四台Centos7服务器 3、实验部署 3.1、master、slave1、slave2安装mysq...
    99+
    2023-09-04
    数据库 mysql 运维
  • MYSQL架构中如何主从MHA
    这篇文章给大家介绍MYSQL架构中如何主从MHA,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。MHA – GTID模式MasterHigh Availability Manager a...
    99+
    2024-04-02
  • mysql5.7 for windows二进制安装及怎样配置
    本篇文章给大家分享的是有关mysql5.7 for windows二进制安装及怎样配置,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1)mys...
    99+
    2024-04-02
  • bugfree如何安装及配置
    这篇文章主要为大家展示了“bugfree如何安装及配置”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“bugfree如何安装及配置”这篇文章吧。1.下载Apach...
    99+
    2024-04-02
  • Cacti如何安装及配置
    这篇文章将为大家详细讲解有关Cacti如何安装及配置,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Cacti简介  Cacti是用php语言实现的一个软件,用s...
    99+
    2024-04-02
  • Weblogic6.0如何安装及配置
    这篇文章给大家分享的是有关Weblogic6.0如何安装及配置的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。6.0版本不需要独立的jdk的支持,其已经完全内置了一个jdk1.3 安装: 1.安装,直接使用安装文件...
    99+
    2023-06-03
  • nodejs如何安装及配置
    要安装和配置Node.js,请按照以下步骤进行操作:1. 下载Node.js安装包:访问Node.js官方网站(https://no...
    99+
    2023-08-29
    nodejs
  • Redis如何安装及配置
    小编给大家分享一下Redis如何安装及配置,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!安装Redis安装非常方便,首先通过官网...
    99+
    2024-04-02
  • MySQL高可用架构中MHA的本质以及如何部署
    这篇文章将为大家详细讲解有关MySQL高可用架构中MHA的本质以及如何部署,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。MySQL高可用架构之MHA1、关于...
    99+
    2024-04-02
  • 怎么在CentOS7下安装MySQL5.7数据库以及配置
    本篇内容主要讲解“怎么在CentOS7下安装MySQL5.7数据库以及配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么在CentOS7下安装MySQL5....
    99+
    2024-04-02
  • plsql developer如何安装及配置
    要安装和配置PL/SQL Developer,您可以按照以下步骤进行操作:1. 下载PL/SQL Developer安装文件。您可以...
    99+
    2023-09-28
    plsql developer
  • Linux中zabbix如何安装配置及应用
    这篇文章主要介绍了Linux中zabbix如何安装配置及应用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Zabbix简介:1.基于web的...
    99+
    2024-04-02
  • Ubuntu下如何安装MySQL5.7并配置数据存储路径
    这篇文章主要介绍了Ubuntu下如何安装MySQL5.7并配置数据存储路径的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Ubuntu下如何安装MySQL5.7并配置数据存储路径文章都会有所收获,下面我们一起来看...
    99+
    2023-07-04
  • 苹果cms如何安装及配置
    这篇文章主要介绍了苹果cms如何安装及配置,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。首先大家需要先准备好三样东西:主机,域名,程序,主机...
    99+
    2024-04-02
  • jmeter如何下载及安装配置
    这篇文章将为大家详细讲解有关jmeter如何下载及安装配置,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。环境准备:java 1.8jmeter 5.1.1jmeter环境jmeter环境依赖JAVA环境,...
    99+
    2023-06-22
  • AIX6.1下如何安装及配置VNC
    这篇文章主要为大家展示了“AIX6.1下如何安装及配置VNC”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“AIX6.1下如何安装及配置VNC”这篇文章吧。  下载VNC &n...
    99+
    2023-06-04
  • 如何安装并配置Golang echo框架
    Golang是一种现代化的编程语言,它的简洁性和高效性使其成为全球范围内广泛使用的编程语言之一。在现代的web应用程序开发中,echo是一种流行的微型Web框架,它可以轻松地构建RESTful API和Web应用程序。在本文中,我们将介绍如...
    99+
    2023-05-14
  • IIS中如何安装配置PHP5.3配置
    小编给大家分享一下IIS中如何安装配置PHP5.3配置,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!IIS安装配置PHP5.3配置的方法:首先在IIS中启用CGI...
    99+
    2023-06-20
  • linux如何安装配置及使用redis
    这篇文章主要为大家展示了“linux如何安装配置及使用redis”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux如何安装配置及使用redis”这篇文章吧...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作