人本善良

导航

centos:mysql主从同步配置(2018)

centos:mysql主从同步配置(2018)

https://blog.csdn.net/liubo_2016/article/details/82379115

主服务器:10.1.1.144;

从服务器:10.1.1.163;

 

配置过程

1.进入主服务器,停止主服务mysql服务: systemctl stop mysqld;

 主节点编辑配置文件

vim /etc/my.cnf

添加如下配置:

server-id=1

log-bin=master-bin

log-bin-index=master-bin.index

注: 多台节点的server-id必须不同,否则会出现异常。

重启数据库,使得配置生效:

然后启动mysql服务:

systemctl start mysqld;

2. 进入主节点mysql,创建用户:

create user 'ygw_slave'@'10.1.1.163' identified by 'ygW_2018';

注:ip即允许连接的ip地址,安全起见可以写slave从节点的ip(10.1.1.163),或者直接写%代表所有ip均可以连接。

3. 对用户进行权限设置:

格式:grant replication slave on *.* to 'username'@'ip';

操作:grant replication slave on *.* to 'ygw_slave'@'10.1.1.163';

注: 表示从ip使用username连接过来的请求,允许复制。所以,ip为从节点的ip,username为上面创建的username

使配置生效:

flush privileges;

4. 进入从节点服务器,停止mysql服务: systemctl stop mysqld;

从节点slave编辑配置文件

vim /etc/my.cnf 添加如下配置:

server-id=2

relay-log=slave-relay-bin

relay-log-index=slave-relay-bin

重启mysql服务,使配置生效:

service mysqld restart

5. 从节点mysql进行配置:

change master to
     master_host='10.1.1.144',
     master_user='ygw_slave',
     master_password='ygW_2018',
     master_log_file='mysql-bin.000007',
     master_log_pos=325928;

注: master_host是主节点的ip地址,master_user 和master_password是前面步骤2主服务器创建的用于连接主服务器的帐号和密码,master_log_file和master_log_pos需要从master节点,进入Mysql数据库后进行查询,命令如下:

进入主服务器登录 mysql: mysql -uroot -p ,输入密码后进入mysql,输入如下指令:

show master STATUS;

 

6. 在从节点上启动主从复制

start slave;

如需要关闭,使用如下命令:

stop slave;

查看从节点状态:

show slave status \G;

如果没有异常信息,则说明启动成功。

7.如果步骤6报错,:

ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository
意思是:salve复制线程停止,尝试start slave 时报ERROR 1872错误

解决办法:先执行reset slave all;然后再重新执行步骤5,6即可;

 

查看从节点状态:

 

show slave status \G; 完美!
---------------------
作者:离别
来源:CSDN
原文:https://blog.csdn.net/liubo_2016/article/details/82379115
版权声明:本文为博主原创文章,转载请附上博文链接!

posted on 2019-07-12 15:07  简简单单2018  阅读(1056)  评论(0编辑  收藏  举报