mysql的慢查询、路由器配置、mha高可用

目录

1.慢查询

2.路由器配置

3.mha高可用

介绍

MHA工作原理

MHA软件由两部分组成

实验前准备

4.mha高可用实验

手动切换

自动切换


1.慢查询

set global slow_query_log=ON;

show variables like "long%";

set  long_query_time=5; show status like 'slow%';select sleep(10)  等待了十秒


2.路由器配置

MySQL Router 是轻量级中间件,可在应用程序和任何后端 MySQL 服务器之间提供透明路由。它可用于各种用例,例如通过有效地将数据库流量路由到适当的后端 MySQL 服务器来提供高可用性和可扩展性。可插拔架构还使开发人员能够为自定义用例扩展 MySQL 路由器。

我们在server4上安装MySQL Router,让server4作为一个路由。它连接着3台后端服务器,分别是:server1、server2和server3。

[routing:ro]   ##只读
bind_address = 0.0.0.0
bind_port = 7001    ##端口号
destinations = 172.25.13.2:3306,172.25.13.3:3306
routing_strategy = round-robin  ##轮叫
 
[routing:rw]   ##读写
bind_address = 0.0.0.0
bind_port = 7002
destinations = 172.25.0.1:3306,172.25.0.2:3306,172.25.0.3:3306
routing_strategy = first-available  ##按顺序先后

添加一个用户、设置密码 

mysql> grant all on *.* to 'wxh'@'%' identified by 'westos';  
##因为server123三台主机是组复制,所以都会执行

查看7001.7002端口 访问server4mysql  跳转到server3

退出再次访问跳转到server2 

访问7002端口跳转到server1 


3.mha高可用

介绍

Master HA,对主节点进行监控,可实现自动故障转 移至其它从节点;通过提升某一从
节点为新的主节点,基于主从复制实现,还需要客户端配合实现,目前MHA主要支持一主多
从的架构,要搭建MHA,要求一个复制集群中必须最少有 三台数据库服务器,一主二从,
即一台充当master,一台充当备用master,另外一台充当从库,如果财大气粗,也
可以用一台专门的服务器来当MHA监控管理服务器

MHA工作原理

从宕机崩溃的master保存二进制日志事件(binlog events) 
识别含有最新更新的slave 
应用差异的中继日志(relay log)到其他的slave 
应用从master保存的二进制日志事件(binlog events) 
提升一个slave为新的master 
使其他的slave连接新的master进行复制 
注意:MHA需要基于ssh,key验证登入方法

MHA软件由两部分组成

Manager工具包和Node工具包,具体的说明如下。
1.Manager工具包主要包括以下几个工具:
    masterha_check_ssh              检查MHA的SSH配置状况
    masterha_check_repl             检查MySQL复制状况
    masterha_manger                 启动MHA
    masterha_check_status           检测当前MHA运行状态
    masterha_master_monitor         检测master是否宕机
    masterha_master_switch          控制故障转移(自动或者手动)
    masterha_conf_host              添加或删除配置的server信息
2.Node工具包(这些工具通常由MHA Manager的脚本触发,无需人为操作)主要包括以下几个工具:
    save_binary_logs                保存和复制master的二进制日志
    apply_diff_relay_logs           识别差异的中继日志事件并将其差异的事件应用于其他的slave
    filter_mysqlbinlog              去除不必要的ROLLBACK事件(MHA已不再使用这个工具)
    purge_relay_logs                清除中继日志(不会阻塞SQL线程)

实验前准备

MHA主要支持一主多从的架构,要搭建MHA,要求一个复制集群中必须最少有三台数据库服务器,一主二从,即一台充当master,一台充当备用master,另外一台充当slave,所以至少需要三台服务器。

将server1.2.3恢复到主复制阶段

server1配置server2配置

server3同理serve2暂停服务查看repl用户将node 的安装包传给server123,并安装 

将masterha_default.cnf内容传到app1中

[server default]
user=root    ##mysql主从节点的管理员用户密码,确保可以从远程登陆
password=westos    
ping_interval=3    ##发送ping包的时间间隔,默认是3秒,尝试三次没有回应的时候自动进行failover
remote_workdir=/tmp    ##远端mysql在发生切换时binlog的保存位置
repl_user=repl    ##主从复制用户密码
repl_password=westos
secondary_check_script=/usr/bin/masterha_secondary_check -s 172.25.13.2 -s 172.25.13.3
ssh_user=root    ##ssh用户名
manager_workdir=/etc/masterha    ##manager工作目录
manager_log=/etc/masterha/mha.log    ##manager日志文件
master_binlog_dir=/date/mysql    ##mysql主服务器的binlog目录
#master_ip_failover_script=/etc/masterha/master_ip_failover    ##failover自动切换脚本
#master_ip_online_change_script= /usr/local/bin/master_ip_online_change     ##手动切换脚本

 
[server1]
hostname=172.25.13.1
port=3306
#candidate_master=1
#check_repl_delay=0
 
[server2]
hostname=172.25.13.2
port=3306
candidate_master=1    ##指定failover时此slave会接管master,即使数据不是最新的
check_repl_delay=0
 
[server3]
hostname=172.25.13.3
port=3306
no_master=1    ##始终是slave

检测是否正常error为秘钥问题、生成秘钥测试秘钥是否正确再次检测-成功检查用户调试成功


4.mha高可用实验

手动切换

 masterha_master_switch --conf=/etc/mysql/app1.cnf --master_state=alive --new_master_host=172.25.13.2 --new_master_port=3306 --orig_master_is_new_slave --running_updates_limit=10000

进入server1查看master是否手动切换手动再将master更改回server1

masterha_master_switch --conf=/etc/masterha/app1.cnf --master_state=alive --new_master_host=172.25.13.1 --new_master_port=3306 --orig_master_is_new_slave --running_updates_limit=10000

自动切换

赋予脚本执行权限

修改配置文件将脚本挂入后台让其自行检测在server1上添加vip

关闭server1,脚本执行退出 

此时master会变成server2并且vip也会转到server2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值