使用mysqlreplicate命令快速搭建 Mysql 主从复制
MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能、更高可靠性要求的场合。
与之对应的是另一个同步技术是MySQL Cluster,但因为MySQL Cluster配置比较复杂,所以使用者较少。
Mysql Utilities 是一个 Mysql 的工具箱,里面有不少好用的小工具
其中的 mysqlreplicate 命令,可以让我们通过一个命令就能快速配置好主从复制环境,
用法:
mysqlreplicate \ --master=root:111111@192.168.31.168:3306 \ --slave=root:111111@192.168.31.101:3306 \ --rpl-user=replutil:111111
-- master 指定主库的连接信息
-- slave 指定从库的连接信息
-- rpl-user 指定用于复制的用户信息,这个用户需要提前在 master 上创建好,
例如:
grant ALL PRIVILEGES on *.* to replutil@"192.168.31.101" Identified by "111111";
注意,创建用户时,其中的从库IP要明确,不要用 ‘%’
可以看到,总共只需要两步:
- master 上创建用于复制的用户
- 执行 mysqlreplicate 命令
几秒钟就完成了主从配置。
Mysql Utilities 还有很多功能,
例如
- 查看数据库占用的空间大小
mysqldiskusage --server=root:111111@localhost
- 再例如索引检查,看是否有冗余的索引:
mysqlindexcheck --server=root@localhost employees #这是对 employees 这个库进行索引检查
Mysql Utilities安装方法
下载解压 Mysql Utilities,进入解压后的目录,执行编译安装命令
python ./setup.py build python ./setup.py install
执行完成后,就可以使用其中的工具命令了。