工作生活

08-MySQL集群解决方案-主从配置

2019-06-28  本文已影响0人  吕小凯
#搭建主库
mkdir /data/mysql/master01 -p
cd  /data/mysql/master01
mkdir conf data
chmod 777 * -R
#创建配置文件
cd /data/mysql/master01/conf
vim my.cnf
#输入以下内容
[mysqld]
log-bin=mysql-bin    #开启二进制文件
server-id=1   #服务id,单集群节点内不可重复
binlog_format=MIXED    #设置mixed模式
#创建容器(如果没有定制镜像,需要进入mysql容器内my.cnf.d文件夹内复制配置文件到/etc/目录)
docker create --name percona-master01 -v /data/mysql/master01/data:/var/lib/mysql -v /data/mysql/master01/conf:/etc/my.cnf.d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7.25
#启动
docker start percona-master01 && docker logs -f percona-master01

创建同步账户以及授权

create user 'xiaokai'@'%' identified by '123456';
grant replication slave on . to 'xiaokai'@'%' identified by '123456';
//如果要配置Haproxy,可以开启所有权限
grant all on . to 'xiaokai'@'%' identified by '123456';
flush privileges;

查看master状态

show master status;

查看serverid是否生效

show global variables like 'server%'

查看模式是否修改成功

show global variables like 'binlog%'

#搭建从库
mkdir /data/mysql/slaver01 -p
cd  /data/mysql/slaver01
mkdir conf data
chmod 777 * -R
#创建配置文件
cd /data/mysql/slaver01/conf
vim my.cnf
#输入以下内容
[mysqld]
server-id=2   #服务id,单集群节点内不可重复

#创建容器(如果没有定制镜像,需要进入mysql容器内my.cnf.d文件夹内复制配置文件到/etc/目录)
docker create --name percona-slaver01 -v /data/mysql/slaver01/data:/var/lib/mysql -v /data/mysql/slaver01/conf:/etc/my.cnf.d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7.25
#启动(记得同步my.cnf)
docker start percona-slaver01 && docker logs -f percona-slaver01

设置master相关信息

CHANGE MASTER TO MASTER_HOST='172.16.169.168',
MASTER_PORT=3306,
MASTER_USER='xiaokai',
MASTER_PASSWORD='123456',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=154;

启动同步

start slave

查看slave状态

show slave status

上一篇下一篇

猜你喜欢

热点阅读