利用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信息通过复制从库物理文件做主从》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

极简算法史:从数学到机器的故事

极简算法史:从数学到机器的故事

[法] 吕克•德•布拉班迪尔 / 任轶 / 人民邮电出版社 / 2019-1 / 39.00元

数学、逻辑学、计算机科学三大领域实属一家,彼此成就,彼此影响。从古希腊哲学到“无所不能”的计算机,数字、计算、推理这些貌似简单的概念在三千年里融汇、碰撞。如何将逻辑赋予数学意义?如何从简单运算走向复杂智慧?这背后充满了人类智慧的闪光:从柏拉图、莱布尼茨、罗素、香农到图灵都试图从数学公式中证明推理的合理性,缔造完美的思维体系。他们是凭天赋制胜,还是鲁莽地大胆一搏?本书描绘了一场人类探索数学、算法与逻......一起来看看 《极简算法史:从数学到机器的故事》 这本书的介绍吧!

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

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具