mysql5.7主从复制及相关注意点!

Posted firebirdweb

tags:

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

首先在两台不同IP的服务器安装相同版本的mysql(也可以docker 用 network模式).例如

 

主数据库(master) 178.18.0.2

my.cnf的设置(一般在/etc/mysql/my.cnf 具体路径自己找下)

#要看准这些,不是是[mysql]这里的

[mysqld]       

#id标识                 

server-id=1

#(开启binlog)

log-bin=/var/lib/mysql/mysql-bin

#这里设置不要备份的部分

binlog-ignore-db=mysql
binlog-ignore-db=sys

连接主数据库,创建一个从服务器可以连接的用户   就是cmd界面出现 mysql>这样的时候;

GRANT ALL PRIVILEGES ON *.* TO ‘slave‘@‘%‘ IDENTIFIED BY ‘abc123456!‘ WITH GRANT OPTION;  

#为了安全,这个%也可以换从服务器IP,例如从服务器IP是178.18.0.3 这样的。

然后刷新数据库

FLUSH PRIVILEGES;

重启数据库,查看主数据库状态

show master status;

技术图片

 

 类似这样的东西,记录file 和 position 以备从服务器使用.这个数据,每重启一次数据库,有可能会改变,所以重启服务器后,从服务器要做相应改变

 

从数据库存 (slave) 178.18.0.3

首先,在从服务器测试是否可以连接得上主服务器

cmd后运行,mysql -h 178.18.0.2 -uslave -pabc123456! 如果可以连接的上,证明可以互通!

my.cnf的设置(一般在/etc/mysql/my.cnf 具体路径自己找下)

[mysqld]                         

server-id=2

连接从数据库后,运行下面命令,部分数据按实际

CHANGE MASTER TO
MASTER_HOST=‘178.18.0.2‘,
MASTER_USER=‘slave‘,
MASTER_PASSWORD=‘abc123456!‘,
MASTER_LOG_FILE=‘mysql-bin.000002‘,
MASTER_LOG_POS=2216;
然后

 

以上是关于mysql5.7主从复制及相关注意点!的主要内容,如果未能解决你的问题,请参考以下文章

开发人员学Linux:CentOS7编译安装MySQL5.17.8多实例及主从复制

mysql5.7 主从复制

Mysql5.7主从复制配置文档

mysql5.7 基于gtid的主从复制

生产环境实践Mysql5.7主从+Atlas实现读写分离

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