mysql主从复制配置

1 篇文章 0 订阅
1 篇文章 0 订阅

服务器环境 centos6.5, 主 mysql 5.6; 从: docker 1.7 , mysql 5.6

基本配置

配置master

1.修改配置文件my.cnf

$ vim /etc/my.cnf

在 [mysqld] 的配置中增加:

# copying - master
log_bin = mysql_bin
server_id = 10

重启mysql服务, 使新配置生效
进入mysql, 并确认配置已经生效

mysql> show variables like '%log_bin%';

log_bin

mysql> show variables like 'server_id';

server_id

2.添加同步时所用用户

mysql> use mysql;
mysql> GRANT ALL PRIVILEGES ON *.* TO repl'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
mysql> flush privileges;

为了安全, 此处可以简单配置, 而不是像上面一样配置所有权限和可连接ip;
如果不配置所有权限, 必须要开的权限有 replication slave, replication client;

配置slave

1.docker安装mysql

$ docker search mysql

确认有mysql后,进行拉取操作

$ docker pull mysql:5.6

确认拉取成功

$ docker images |grep mysql

启动, 因为服务器上已开启的mysql占用了3306所以此处使用3307

$ docker run -p 3307:3307 --name mysql -e MYSQL_ROOT_PASSWORD=RootPassword -d mysql:5.6

进入docker, 确认mysql可用

docker$ docker exec -it mysql bash
docker$ mysql -uroot -pRootPassword

修改docker中mysql的配置文件

$ vim /var/lib/docker/devicemapper/mnt/2d32144b80f431e98c15c30077f48d5f59063413aa64b4a65dc85d1b327d6e81/rootfs/etc/mysql/mysql.conf.d/mysqld.cnf

在 [mysqld] 的配置中增加:

# 便于出错时查看日志
log-error=/var/lib/mysql/docker_mysql_error.log 

# copy - slave
log_bin = mysql_bin
server_id = 2
relay_log = /var/lib/mysql/mysql-relay-bin
log_slave_updates = 1
read_only = 1

重启mysql服务

$ docker restart mysql

2.docker配置salve

进入docker中的mysql, 添加用户

mysql> use mysql;
mysql> GRANT ALL PRIVILEGES ON *.* TO repl'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
mysql> flush privileges;

设置要同步的master

mysql> change master to master_host='MASTERHOST',master_user='repl',master_password='PASSWORD',master_log_file='mysql_bin.000001',master_log_pos=0;

开始同步

mysql> start slave;

查看运行状态

master

查看同步状态

mysql> show master status\G;

查看正在运行的线程

mysql> show processlist;

master进程

slave

查看同步状态

mysql> show slave status\G;

查看正在运行的线程

mysql> show processlist;

slave进程

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值