mysql数据库容灾实时备份主从

简介: 介绍:         随着互联网时代的发展数据对于一个企业来说越来越重要,各种安全策略进行备份,同步都应用而生,技术发展也逐渐走向成熟,虽然我们不能100%保证数据的安全,但是我们可以采用副本复制、备份的机制达到尽可能的让数据不丢失,将损失减少到最小,所以实时备份是非常有必要的。 一、mysql数据库备份参数及命令说明         1、server-id  服务器id (主从必

介绍:

        随着互联网时代的发展数据对于一个企业来说越来越重要,各种安全策略进行备份,同步都应用而生,技术发展也逐渐走向成熟,虽然我们不能100%保证数据的安全,但是我们可以采用副本复制、备份的机制达到尽可能的让数据不丢失,将损失减少到最小,所以实时备份是非常有必要的。

一、mysql数据库备份参数及命令说明

        1、server-id  服务器id (主从必须不一样)

        2、log-bin 存放服务执行过的sql语句,可以自定义

    3、replicate-do-db 指定需要记录那个数据库,作为同步数据库

    4、innodb_file_per_table 修改表空间模式,一张表生成一个文件,mysql默认一个data表空间,性能极差

    5、log_bin_trust_function_creators 开启支持创建函数function 语句,否则遇到函数同步报错

    6、innodb_flush_log_at_trx_commit  设置提交事务或其他指令将数据强行写入磁盘,如果为1表示每一次提交事务将执行sql强行写入,最多丢失一个事务的数据

    7、sync_binlog  刷新事务写入的次数,将数据丢失降到最低,与innodb_flush_log_at_trx_commit  组合使用

    8、innodb_support_xa 支持分布式事务,确保事务写入bin_log 日志文件

    9、log_slave_updates  用于控制把所有的操作动作指令写入bin_log 日志文件

二、部署主从服务器指令代码

a、主库配置:192.168.6.159,配置mysql中my.ini
        server-id=1
        log-bin=mysql-bin
        replicate-do-db=abc

        *****重启主库服务*****

b、从库配置:192.168.6.137,配置mysql中my.ini
        server-id=2
        log-bin=mysql-bin
        replicate-do-db=abc

        relay-log-index=slave-relay-bin.index
        relay-log=slave-relay-bin

        innodb_flush_log_at_trx_commit=1
        sync_binlog=1

        innodb_support_xa=1
        log_slave_updates=1



        *****重启从库服务*****

c、配置命令同步数据,先查看主库服务上的日志文件状态,
        mysql> show master status;
        +------------------+----------+--------------+------------------+
        | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
        +------------------+----------+--------------+------------------+
        | mysql-bin.000001 |      107 |              |                  |
        +------------------+----------+--------------+------------------+
d、在从库连接主库命令,启动从库数据同步主库数据
        change master to master_host='192.168.6.159',master_user='root',master_password='ysl',
         master_log_file='mysql-bin.000001',master_log_pos=107;
         
         ————————————————————————————————————————————————————————————————————————————————————————
         Query OK, 0 rows affected (2.55 sec)

        启动从库服务
        start slave;


    查看命令是否连接成功,其中 Slave_IO_Running:Yes,Slave_SQL_Running:Yes 有表示连接成功
            show slave status\G;
    
    ***********************以上内容就是单一的主从数据搭建完毕,数据库会定是同步,如果断开系统每隔1分钟自动连接**************
    
    
  e、然后在添加一台服务器,将上面的从库作为主库继续同步到当前新加入的这台服务器中,只需要在当前新服务器上mysql配置my.ini
          ******此处有两种情况***********
          a、如果你以前的从服务器已经开启日志记录,那么就不需要关闭192.168.6.137的同步服务,不用执行stop slave;
          b、如果你没有配置开启二进制日志文件记录,就需要停止stop slave服务,然后备份数据,然后将192.168.6.137服务器开启日志,重新导入数据,生成二进制日志文件
 
  1、配置内容:192.168.229.129
        server-id=3
        log-bin=mysql-bin
        replicate-do-db=abc
        relay-log-index=slave-relay-bin.index
        relay-log=slave-relay-bin
  2、重新启动mysql服务
  3、执行连接192.168.6.137的服务器同步配置命令
          change master to master_host='192.168.6.137',master_user='root',master_password='123456',
         master_log_file='mysql-bin.000001',master_log_pos=107
  4、启动服务,同步数据
          start slave;
 
  5、查看是否已经同步数据,其中 Slave_IO_Running:Yes,Slave_SQL_Running:Yes 有表示连接成功
            show slave status\G;
    
    






相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
存储 容灾 关系型数据库
PolarDB开源数据库进阶课11 激活容灾(Standby)节点
本文介绍了如何激活PolarDB容灾(Standby)节点,实验环境依赖于Docker容器中用loop设备模拟共享存储。通过`pg_ctl promote`命令可以将Standby节点提升为主节点,使其能够接收读写请求。激活后,原Standby节点不能再成为PolarDB集群的Standby节点。建议删除对应的复制槽位以避免WAL文件堆积。相关操作和配置请参考系列文章及视频教程。
381 1
|
存储 关系型数据库 分布式数据库
PolarDB开源数据库进阶课5 在线备份
本文介绍了如何在PolarDB RAC一写多读集群中进行在线备份,特别针对共享存储模式。通过使用`polar_basebackup`工具,可以将实例的本地数据和共享数据备份到本地盘中。实验环境依赖于Docker容器中用loop设备模拟的共享存储。
532 1
|
关系型数据库 MySQL Shell
MySQL 备份 Shell 脚本:支持远程同步与阿里云 OSS 备份
一款自动化 MySQL 备份 Shell 脚本,支持本地存储、远程服务器同步(SSH+rsync)、阿里云 OSS 备份,并自动清理过期备份。适用于数据库管理员和开发者,帮助确保数据安全。
|
存储 关系型数据库 分布式数据库
PolarDB开源数据库进阶课2 创建容灾(standby)节点
本文介绍了如何在macOS中搭建PolarDB的容灾(standby)节点,作为“穷鬼玩PolarDB RAC一写多读集群”系列的一部分。基于前一篇通过Docker和loop设备模拟共享存储的经验,本文详细描述了创建虚拟磁盘、启动容器、配置网络、格式化磁盘、备份数据及配置standby节点的具体步骤。
465 0
|
12月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
821 10
|
存储 关系型数据库 MySQL
【赵渝强老师】使用select...into outfile语句备份MySQL
本文介绍了MySQL中使用`SELECT...INTO OUTFILE`语句将表数据导出为文本文件的方法。通过示例演示了如何备份员工表(emp)的数据,包括创建存储目录、设置权限、配置参数`secure_file_priv`以及解决相关错误的过程。字段分隔符和行终止符可自定义,确保数据格式符合需求。最后展示了备份文件的内容,验证操作成功。
769 36
|
存储 SQL 关系型数据库
【赵渝强老师】使用mysqldump备份MySQL
本文介绍了 MySQL 自带的逻辑备份工具 mysqldump 的使用方法。通过 mysqldump,可以将数据库中的数据转换为对应的 SQL 插入语句,便于备份和还原。文章详细说明了如何备份所有数据库、指定数据库及特定表,排除某些表不备份的操作,以及删除数据库后如何通过备份文件恢复数据。同时提供了视频讲解和具体命令示例,帮助用户更好地理解和应用该工具。
1324 5
|
关系型数据库 MySQL Linux
在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾
以上就是在Linux环境下备份Docker中的MySQL数据并传输到其他服务器以实现数据级别的容灾的步骤。这个过程就像是一场接力赛,数据从MySQL数据库中接力棒一样传递到备份文件,再从备份文件传递到其他服务器,最后再传递回MySQL数据库。这样,即使在灾难发生时,我们也可以快速恢复数据,保证业务的正常运行。
639 28
|
存储 关系型数据库 MySQL
利用Cron表达式实现MySQL数据库的定时备份
以上就是如何使用Cron表达式和mysqldump命令实现MySQL数据库的定时备份。这种方法的优点是简单易用,而且可以根据需要定制备份的时间和频率。但是,它也有一些限制,例如,它不能备份MySQL服务器的配置文件和用户账户信息,也不能实现增量备份。如果需要更复杂的备份策略,可能需要使用专门的备份工具或服务。
463 15
|
存储 SQL 关系型数据库
【赵渝强老师】使用mydumper备份MySQL
本文介绍了使用mydumper工具进行MySQL数据库备份与恢复的操作方法。相比单线程工作的mysqldump,mydumper支持多线程,速度提升可达10倍。其功能包括事务性表快照、快速压缩、导出binlog等,并提供详细的参数说明和操作步骤。文章通过实例演示了安装mydumper、创建存储目录、全库备份、指定数据库及表备份、删除数据库以及使用myloader恢复数据的完整流程,并附带视频讲解,帮助用户更好地理解和应用该工具。
932 0

推荐镜像

更多