数据库MHA架构介绍
MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本人youshimaton开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能最大程度上保证数据库的一致性。
大约 3 分钟
MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本人youshimaton开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过程中,MHA能做到0~30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能最大程度上保证数据库的一致性。
sudo wget percona.com/get/percona-toolkit.tar.gz
## 安装相关依赖
sudo yum install perl -y
sudo yum install perl-DBI -y
sudo yum install perl-DBD-MySQL -y
sudo yum install perl-Time-HiRes -y
sudo yum install perl-IO-Socket-SSL -y
sudo yum install perl-Digest-MD5.x86_64 -y
今天在搞mysql binlog收集时,需要创建一个mysql用户,结果出现了:
ERROR 1728 (HY000): Cannot load from mysql.procs_priv. The table is probably corrupted
异常
解决办法:
sudo mysql_upgrade -u root -p
binlog 即二进制日志,它记录了数据库上的所有改变,并以二进制的形式保存在磁盘中; 它可以用来查看数据库的变更历史、数据库增量备份和恢复、Mysql的复制(主从数据库的复制)。
binlog有三种格式:
Statement
基于SQL语句的复制(statement-based replication,SBR),Row
基于行的复制(row-based replication,RBR),Mixed
混合模式复制(mixed-based replication,MBR)。今天看到了一个sql:
select count(*), sleep(5) from test