通过两种方式增加从库——不停止mysql服务

本文将介绍通过两种方式增加MySql从库,而不需要停止MySql主服务。两种方式分别为基于GTID的复制和基于数据库备份的复制。

1. 基于GTID的复制

GTID是MySQL从5.6版本中引入的特性,用于在主从复制环境中解决多主复制冲突的问题。在增加从库时,使用GTID能够避免重复数据问题。

1.1 步骤一:启用GTID

在MySQL主服务器上,编辑my.cnf文件,打开GTID模式:

[mysqld]
server-id=1
log-bin=master
binlog-format=ROW
enforce-gtid-consistency=ON

在从服务器的my.cnf文件中添加如下记录

[mysqld]
server-id=102
log-bin=slave
relay-log=replay
binlog-format=ROW
gtid_mode=ON
enforce-gtid-consistency=ON

1.2 步骤二:转储主服务器状态

通过在主服务器上使用mysqldump 转储数据,然后恢复到从服务器

$ mysqldump --master-data=2 --single-transaction --routines --triggers --all-databases --triggers --events --add-drop-database > dumping.sql

转储期间,--master-data=2 将在转储日志开头加入 CHANGE MASTER 语句,而且将包含 GTID_PURGED。

1.3 步骤三:运行 CHANGE MASTER 命令

在从服务器上,运行如下语句,建立Slave主从关系:

$ mysql -u root -p
mysql> change master to 
master_host='192.168.100.101',
master_user='slaveuser',
master_password='slavepass',
master_port=3306,
master_auto_position=1;

然后启动该从服务器作为Slave:

mysql> start slave;

1.4 步骤四:验证复制是否成功

可以使用如下命令在主从服务器上验证:

mysql> show master status\G

在主服务器上这个命令可能会输出如下信息:

File: mysql-bin.000001
Position: 107
Binlog_Do_DB: mydb
Binlog_Ignore_DB: mysql
Executed_Gtid_Set: 0c5e1ca8-c195-11e7-a99b-005056a205be:1-3

在从服务器上,可以使用如下命令验证复制是否成功:

mysql> show slave status\G

可以查看输出中的Slave_IO_Running 和 Slave_SQL_Running 状态是否正常

2. 基于数据库备份的复制

还可以通过数据库备份增加从服务器。优点是操作简单,缺点是需要从主服务器上停止备份。

2.1 步骤一:停止主服务器

停止MySql主机服务,使用mysqldump命令对主数据库进行备份

$ mysqldump -u root -p mydb > mydbdump.sql

2.2 步骤二:将备份文件拷贝到从服务器

使用SCP或其他方式将备份文件从主服务器拷贝到从服务器上。

$ scp mydbdump.sql slave-server:/home/user

2.3 步骤三:恢复数据

在从服务器上,使用MySQL命令行客户端来恢复备份数据:

$ mysql -u root -p < mydbdump.sql

2.4 步骤四:启动Slave MySQL服务器

恢复完成后,在从服务器上启动Slave MySQL服务器:

$ mysql -u root -p
mysql> start slave;

2.5 步骤五:验证复制是否成功

可以使用如下命令在主从服务器上验证:

mysql> show master status\G

在主服务器上这个命令可能会输出如下信息:

File: mysql-bin.000001
Position: 107
Binlog_Do_DB: mydb
Binlog_Ignore_DB: mysql
Executed_Gtid_Set: 0c5e1ca8-c195-11e7-a99b-005056a205be:1-3

在从服务器上,可以使用如下命令验证复制是否成功:

mysql> show slave status\G

可以查看输出中的Slave_IO_Running 和 Slave_SQL_Running 状态是否正常

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:通过两种方式增加从库——不停止mysql服务 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • 如何搭建 MySQL 高可用高性能集群

    如何搭建 MySQL 高可用高性能集群? 搭建MySQL高可用高性能集群需要做以下步骤: 1.选择合适的 MySQL 高可用技术方案 MySQL的高可用方案主要有:主从复制、MGR、Galera Cluster等。具体选择哪种方案,需要根据企业实际业务场景、数据量大小、性能要求等因素进行综合考虑。 2.选择合适的部署方案 搭建MySQL高可用高性能集群的部署…

    database 2023年5月22日
    00
  • Swoole 协程 MySQL 客户端与异步回调 MySQL 客户端的对比

    为什么要对比这两种不同模式的客户端? 异步 MySQL 回调客户端是虽然在 Swoole 1.8.6 版本就已经发布了,但是异步回调的层层嵌套,让编码变得很别扭。如今 Swoole 4.3 版本都已经发布了,并且已经支持协程化的 MySQL 客户端,这意味着可以完全采用同步编码的模式,来进行程序开发了,对于开发者来说这是一个大好的消息。而且在 Swoole …

    MySQL 2023年4月13日
    00
  • Java面试题冲刺第二十六天–实战编程

    Java面试题冲刺第二十六天的实战编程主要涵盖了将一串字符串进行翻转操作的问题。下面我们将具体讲解该题的攻略。 题目描述 给定一个字符串,将字符串中的每个单词翻转过来。 例子: 输入:”the sky is blue”输出:”blue is sky the” 思路分析 该题解题过程分为以下几步: 将字符串按照空格切分为单个单词,并转化为字符数组。 遍历单个单…

    database 2023年5月18日
    00
  • Linux sqlite3 基本命令

    下面是关于Linux sqlite3基本命令的攻略: 什么是SQLite3? SQLite是一个轻型的关系型数据库管理系统,与MySQL、Oracle等大型数据库系统相比,SQLite3不需要特殊的服务器进程或线程并且无需配置。它是独立的,包含在应用程序中,可移植性强,是许多小型设备上的首选数据库。 安装SQLite3 如果你在使用Linux环境,请直接使用…

    database 2023年5月22日
    00
  • SQL 定位连续的值区间

    SQL定位连续的值区间的攻略通常使用窗口函数和自连接完成,具体步骤如下: 窗口函数生成行编号,按照要查询的列进行排序 在查询语句中使用ROW_NUMBER() OVER (ORDER BY column_name)来生成行编号,按照要查询的列进行排序,这个行编号将作为后面自连接表中的关联条件之一。 将原表自连接 将原表自连接,连接条件为行编号相差一,同时还需…

    database 2023年3月28日
    00
  • Mysql数据库 ALTER 操作详解

    Mysql数据库 ALTER 操作详解 什么是ALTER操作? ALTER是MySQL中用于修改表结构的关键词,其可以根据需要增加、修改或删除数据库表中已存在的列,增加或删除索引,约束或整个表。ALTER操作可以让用户更好地适应现实业务需求。 ALTER操作类型 ALTER操作包括以下几种类型: 修改表名 修改列属性 添加列 删除列 添加索引 删除索引 添加…

    database 2023年5月22日
    00
  • mongodb使用心得简单总结

    MongoDB使用心得简单总结 简介 MongoDB是一种流行的NoSQL数据库管理系统,它支持可扩展性、高性能、高可用性和灵活数据模型。它使用JSON类似的文档模型来存储数据,这让它非常适合存储动态数据。 安装 在使用MongoDB之前,必须先安装它。你可以在MongoDB官网上下载适合你操作系统的安装文件。安装完成后,启动MongoDB服务。 连接数据库…

    database 2023年5月22日
    00
  • Linux关于透明大页机制的介绍

    下面就为大家详细讲解“Linux关于透明大页机制的介绍”的完整攻略。 什么是透明大页? 透明大页是Linux内核提供的一种大页机制。透明大页主要是针对多进程应用程序,通过将多个小页映射到同一个物理页框中,降低页表项的数量和TLB(快表)的负载,从而提高应用程序的性能。 如何启用透明大页? Linux内核4.0及以上版本自带了透明大页的支持,如果要启用透明大页…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部