当前位置: 首页 > news >正文

SQL 主从数据库实时备份

在SQL数据库中,主从复制(Master-Slave Replication)是一种常见的实时备份和高可用性解决方案。这种配置允许将一个数据库服务器(主服务器)的更改同步到一个或多个其他数据库服务器(从服务器),从而实现数据的实时备份和可用性提高。以下是一般步骤,用于在SQL数据库中设置主从复制:

1. 配置主服务器:
   -确保主服务器上已启用二进制日志(binary logging),这是记录对数据库的更改的一种机制。
   -配置主服务器的`my.cnf`(或其他配置文件)以启用二进制日志和设置唯一的服务器ID。

   ini
   server_id = 1
   log_bin = /var/log/mysql/mysql-bin.log
   

   重启主服务器以应用配置。

2. 创建用于复制的用户:
   在主服务器上创建一个用于从服务器连接的用户,并为该用户分配复制权限。

   sql
   CREATE USER 'replication_user'@'%' IDENTIFIED BY 'password';
   GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
   FLUSH PRIVILEGES;
   

3. 获取主服务器的当前状态:
   - 在主服务器上运行以下命令,以获取主服务器的当前状态:

   sql
   SHOW MASTER STATUS;
   

   记下输出中的文件名(File)和位置(Position),这将在配置从服务器时用到。

4. 配置从服务器:
   在从服务器上编辑`my.cnf`文件,配置从服务器的唯一服务器ID。

   ini
   server_id = 2
   

   - 重启从服务器以应用配置。

5. 开始复制:
    在从服务器上运行以下命令,以开始从主服务器复制数据:

   sql
   CHANGE MASTER TO
      MASTER_HOST='master_ip',
      MASTER_USER='replication_user',
      MASTER_PASSWORD='password',
      MASTER_LOG_FILE='master_log_file_from_master_status',
      MASTER_LOG_POS=master_log_pos_from_master_status;

   START SLAVE;
  

   替换上述命令中的参数为主服务器的IP地址、创建的复制用户的用户名和密码以及从`SHOW MASTER STATUS;`获得的文件名和位置。

6. 检查复制状态:
   在从服务器上运行以下命令,以检查复制状态:

   sql
   SHOW SLAVE STATUS\G;
   

   确保输出中的`Slave_IO_Running`和`Slave_SQL_Running`都显示为`Yes`,表示复制正在运行。

一旦配置完成,主从复制就建立起来了,主服务器上的更改将自动同步到从服务器上。这提供了实时备份和在主服务器故障时切换到从服务器的可能性,从而提高了系统的可用性。

http://www.lryc.cn/news/230604.html

相关文章:

  • C/C++:在#define中使用参数
  • Hive 查询优化
  • 【Java 进阶篇】JQuery 案例:优雅的隔行换色
  • Redis 常用的类型和 API
  • 在qt的设计师界面没有QVTKOpenGLWidget这个类,只有QOpenGLWidget,那么我们如何得到QVTKOpenGLWidget呢?
  • 力扣每日一道系列 --- LeetCode 138. 随机链表的复制
  • 无人零售:创新优势与广阔前景
  • 【华为OD题库-022】阿里巴巴找黄金宝箱(IV)-java
  • Linux 图形界面配置RAID
  • (脏读,不可重复读,幻读 ,mysql5.7以后默认隔离级别)、( 什么是qps,tps,并发量,pv,uv)、(什么是接口幂等性问题,如何解决?)
  • 安全通信网络(设备和技术注解)
  • 深度学习_12_softmax_图片识别优化版代码
  • element-ui设置下拉选择切换必填和非必填
  • Linux的命令——关于操作用户及用户组的命令
  • pycharm 设置多级跳转SSH
  • LeetCode 189.轮转数组(三种方法解决)
  • GB28181设备对接视频流的流程
  • 类属性修改(为什么python类不具备被赋值能力?)
  • uniapp App端 解决input@input事件动态修改值不生效的问题
  • ELK分布式日志
  • Kylin-Server-V10-SP3+Gbase+宝兰德信创环境搭建
  • po与vo互转工具类
  • 基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(三)
  • PyCharm:2023新版PyCharm无UI工具栏,如何回旧版
  • 阿里云国际站:云备份
  • C#中.NET 6.0 Windows窗体应用通过EF访问数据库并对数据库追加、删除记录
  • kafka+ubuntu20.04+docker配置
  • 遍历一个对象,并得出所对应的值
  • WGCLOUD的特点整理
  • 新版软考高项试题分析精选(三)