mysql主从复制,很简单

Posted node2017

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql主从复制,很简单相关的知识,希望对你有一定的参考价值。

mysql主持很多主从复制架构,将master的数据复制到slave的数据库中。

下面将搭建最简单的主从架构,master的ip为192.168.137.103,slave的ip为192.168.137.104,数据库的安装参考http://blog.csdn.net/yingxiake/article/details/51656970,这里使用的是5.7的mysq版本。

1、修改master上的配置文件

 vi /etc/my.cnf

配置打开二进制日志文件,使用偏移量记录配置位置,添加如下配置内容

server-id=103 #id唯一
log-bin=mysql-bin #开启记录二进制日志

2、创建一个用于slave访问master的用户,并授权复制权限,这里我们一般不用root用户

 mysql>CREATE USER 'slave'@'%' IDENTIFIED BY '123456'; #创建用户
 mysql>GRANT REPLICATION SLAVE  ON *.* TO 'slave'@'%' IDENTIFIED BY '123456';#授权

3、启动master和slave的服务

service mysqld start ; 

4、查看master的主从状态

mysql> show master status \\G;

5、修改slave的配置文件

 vi /etc/my.cnf

配置打开二进制日志文件,使用偏移量记录配置位置,添加如下配置内容,并重启服务

server-id=104
log-bin=mysql-bin

6、配置Slave的从属

change master to master_host='192.168.137.103',master_user='slave',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=154; 

然后启动slave,查看slave的状态

mysql> start slave;
mysql> show slave status \\G;

7、进行测试,在master上新建一个数据库叫liuxg

mysql> create database liuxg ;

然后在slave上查看数据库

show databases ;

其他方面需要注意:

1、slave日志记录读的pos要和master日志记录的pos一致,避免数据同步不一致
2、如果之前master已经有数据了,可以通过dump先把数据备份到从库,然后从库再从master的pos同步数据

mysqldump -uroot -p123 --all-databases > /home/test.sql

以上是关于mysql主从复制,很简单的主要内容,如果未能解决你的问题,请参考以下文章

MySQL主从复制参数注解

学会MySQL主从复制读写分离,看这篇就够了

mysql主从复制概述以及配置mysql5.7.10实现简单主从复制

MySQL主从复制的简单搭建

MySQL主从复制的简单搭建

MySQL主从复制的简单搭建