利用slave_relay_log_info信息通过复制从库物理文件做主从

栏目: 数据库 · 发布时间: 6年前

利用slave_relay_log_info信息通过复制从库物理文件做主从

生产环境:

MySQL 5.7.18 [RPM]

Linux:CentOS 6.9

主库:node111 

从库:node130

新增加从库:node131

原理:利用slave_relay_log_info信息通过复制从库物理文件做一台新的从库

实现的功能:

在不停应用的情况, 快速 新增加一台从库

vim /etc/my.cnf # 配置slave从库的配置信息以表的形式存储

relay_log_info_repository = TABLE

master_info_repository    = TABLE

relay_log_recovery        = on

skip-slave-start        #数据库启动后不启动主从复制 

1. 首先查看从库的slave_relay_log_info

(root@host130_slave) [(none)]> select * frommysql.slave_relay_log_info\G;

*************************** 1. row***************************

Number_of_lines: 7

Relay_log_name: ./relay-bin.005421

Relay_log_pos: 1056548303

Master_log_name: mysql-bin.002269

Master_log_pos: 1056548090

Sql_delay: 0

Number_of_workers: 16

Id: 1

Channel_name:

1 row in set (0.00 sec)

ERROR:

No query specified

查看同步连接参数:

(root@host130_slave) [(none)]> select *   from mysql.slave_master_info\G;

*************************** 1. row***************************

Number_of_lines: 25

Master_log_name:mysql-bin.002270

Master_log_pos: 21428102

Host: 192.168.66.111

User_name: slave

User_password: slave123

Port: 3306

Connect_retry: 60

Enabled_ssl: 0

2. 将从库的主从复制停止:

mysql>slave stop

查看停止后的slave_relay_log_info,查看从库应用的POS位置点

(root@host130_slave) [(none)]> select * frommysql.slave_relay_log_info\G;

*************************** 1. row***************************

Number_of_lines: 7

Relay_log_name: ./relay-bin.005421

Relay_log_pos: 1056548307

Master_log_name: mysql-bin.002270

Master_log_pos: 1056548132

Sql_delay: 0

Number_of_workers: 16

Id: 1

Channel_name:

1 row in set (0.00 sec)

查看主从同步连接主库的参数:

(root@host130_slave) [(none)]> select *   from mysql.slave_master_info\G;

*************************** 1. row***************************

Number_of_lines: 25

Master_log_name:mysql-bin.002270

Master_log_pos: 21428102

Host: 192.168.66.111

User_name: slave

User_password: slave123

Port: 3306

Connect_retry: 60

Enabled_ssl: 0

3. 将从库停机

service mysqld stop

4. 将/var/lib/mysql下面所有的文件复制到node131另一台配置一样的空数据库的对应目录下面(新从库的数据库版本一样)

scp -r /var/lib/mysql/*   root@192.168.66.131:/var/lib/mysql/

# 关闭selinux 关闭防火墙

#setenforce 0

#service iptables stop

#chkconfig iptables off

5. 修改192.168.66.131新从库数据文件的权限:

node131#chown mysql.mysql /var/lib/mysql/* -R

6. 将从库node130的配置文件复制到node131数据库下:

node130# scp /etc/my.cnf root@node131:/etc/

修改server-uuid:在同一个主从环境中,这个值需要唯一 

[root@node7 mysql]# vim auto.cnf

[auto]

server-uuid=f8db3a0a-306f-11e9-acc6-000c297446e9

修改/etc/my.cnf

server_id=7 # 这个值在主从环境中也要唯一

7. 启动数据库:

node131#service mysqld start

8: 在node131上重新配置主从

通过 mysql.slave_relay_log_info 的参数修改对应配置

mysql> stop slave;

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> reset slave;        #做这个之前要记录下slave同步的参数

Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> change master to master_host=192.168.66.111,master_user=slave,master_password=;slave123;,master_port=3306,master_log_file=mysql-bin.002270,master_log_pos=1056548090;

mysql> start slave;

mysql> show slave status\G;

新从库node131配置完成

利用slave_relay_log_info信息通过复制从库物理文件做主从

利用slave_relay_log_info信息通过复制从库物理文件做主从


以上所述就是小编给大家介绍的《利用slave_relay_log_info信息通过复制从库物理文件做主从》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

部落:一呼百应的力量

部落:一呼百应的力量

高汀 (Godin.S.) / 刘晖 / 中信出版社 / 2009-7 / 26.00元

部落指的是任何一群人,规模可大可小,他们因追随领导、志同道合而相互联系在一起。人类其实数百万年前就有部落的出现,随之还形成了宗教、种族、政治或甚至音乐。 互联网消除了地理隔离,降低了沟通成本并缩短了时间。博客和社交网站都有益于现有的部落扩张,并促进了网络部落的诞生——这些部落的人数从10个到1000万个不等,他们所关注的也许是iPhone,或一场政治运动,或阻止全球变暖的新方法。 那么......一起来看看 《部落:一呼百应的力量》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具