1、MySQL数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题。还好MySQL数据库提供了一种主从备份的机制,其实就是把主数据库的所有的数据同时写到备份数据库中。实现MySQL数据库的热备份。

2、要想实现双机的热备首先要了解主从数据库服务器的版本的需求。要实现热备MySQL的版本都要高于3.2,还有一个基本的原则就是作为从数据库的数据库版本可以高于主服务器数据库的版本,但是不可以低于主服务器的数据库版本。

MySQL的双机热备份是基于MySQL内部复制功能,建立在两台或者多台以上的服务器之间,通过它们之间的主从关系,是插入主数据库的数据同时也插入到从数据库上,这实现了动态备份当前数据库的功能。下面细说一下主从热备份的步骤:

假设主服务器A(master)、从服务器为B(slave)

A:192.168.0.104

B:192.168.0.169

1.       主服务器授权

授权副服务器可以连接主服务器并可以进行更新。这是在主服务器上进行的,创建一个

username和password供副服务器访问时使用。在MySQL命令行下输入

mysql> GRANT REPLICATION SLAVE ON *.* TO backup@‘192.168. 0.169’ IDENTIFIED BY ‘ 123456’ ;

这里创建了一个帐号backup用于slave访问master来更新slave数据库。

当然也可以跳过这步直接使用网站本身的root用户和密码来访问master,在这里以root用户作为例子来介绍

2.       数据复制

将master上已有的数据复制到slave上,以便主从数据库建立的时候两个数据库的数据保持一致。

在master上导出数据

mysql> FLUSH TABLES WITH READ LOCK;

D:/Develop/MySQL/bin> mysqldump –u root -p cartrader > d:/cartrader.sql

    mysql> UNLOCK TABLES
 

在slave上导入数据

mysql>use cartrader

mysql>source d:/cartrader.sql

另外也可以使用LOAD DATA FROM MASTER语句将主服务器的数据传输到副服务器,但使用上有些限制。注意:在执行数据复制的过程中,要确保不能对主服务器执行更新操作。不推荐使用!

3.       配置主服务器

修改master上mysql的根目录下的my.ini配置文件

在选项配置文件中赋予主服务器一个server-id,该id必须是1到2^23-1范围

内的唯一值。主服务器和副服务器的server-id不能相同。另外,还需要配置主服务器,使之启用二进制日志,即在选项配置文件中添加log-bin启动选项。

[mysqld]

#唯一值,并不能与副服务器相同

server-id=1

#日志文件以binary_log为前缀,如果不给log-bin赋值,日志文件将以#master-server-hostname为前缀

log-bin = bin_log

#日志文件跳过的数据库(可选属性)

binlog-ignore-db= mysql,test,information_schema #日志文件操作的数据库(可选属性)

binlog-do-db= cartrader

注意:如果主服务器的二进制日志已经启用,关闭并重新启动之前应该对以前的二

进制日志进行备份。重新启动后,应使用RESET MASTER语句清空以前的日志。

原因:master上对数据库cartrader的一切操作都记录在日志文件中,然后会把日志发给slave,slave接收到master传来的日志文件之后就会执行相应的操作,使slave中的数据库做和master数据库相同的操作。所以为了保持数据的一致性,必须保证日志文件没有脏数据。

4.       重启master

配置好以上选项后,重启MySQL服务,新选项将生效。现在,所有对数据库中信息的

更新操作将被写进日志中。

5.配置slave

在副服务器上的MySQL选项配置文件中添加以下参数。

[mysqld]

#唯一,并与主服务器上的server-id不同。

server-id=2

#主服务器的主机名或者ip地址

master-host= 192.168.0.104

#如果主服务器没有在默认的端口上监听,则需确定master-port选项

master-port=3306

#步骤2.1中创建的用户名和密码

master-user=root

master-password=123456

#复制操作要针对的数据库(可选,默认为全部)

replicate-do-db=cartrader

#如果主副服务器间连接经常失败,需增加master-retry-count和master-connect-retry

#master-retry-count连接重试的次数

#master-connect-retry 连接失败后等待的秒数

master-retry-count = 999

master-connect-retry = 60

 

5.       重启slave

副服务器上MySQL服务重启后,还在数据目录中创建一个master.info文件,其中包含

所有有关复制过程的信息(连接主服务器的相关信息及与主服务器交换数据的相关信息)。在初次启动以后,副服务器将检查这个master.info文件,以得到相关信息。

如果想修改复制选项,删除master.info并重启MySQL服务,在启动过程中使用选项配置文件中的新选项进行重新创建了master.info文件。

将主服务器上备份好的数据库脚本文件(cartrader.sql)导入到副服务器数据库中,以便保

证主-副服务器上进行复制操作的起点一样。

6.       查看master

在master上

mysql>show master status

查看master的状态与设置的是否一致

7.查看slave

一般情况下重启了slave之后,自动就会开启复制功能,可以通过下面的语句查看

在slave上

mysql>show slave status

如果显示waiting for master to send event 的话就表示已经启动了,反之就运行

mysql>start slave

来启动slave

在SHOW SLAVE STATUS的命令输出后,应该包含Slave_IO_Running对应的值为YES,
Slave_SQL_Running对应的值为YES,如下图所示,只有这样才保证主从机能正常备份。

暂时停止主从热备份

mysql>stop slave

注:以上的配置方式只能实现A->B,即数据由A(master)转移到B(slave),不能由B转移到A,这样的话对B做的任何操作就不会被同步到数据库A中。当然也可以通过把A设置成slave和master,把B设置成slave和master从而实现对A或者B的任何改动都会影响到另外一方。配置同上,在此不在论述。

MySQL双机热备份实施方案相关推荐

  1. mysql冷热备份方案_MySQL双机热备份实施方案

    MySQL双机热备份实施方案 1.MySQL数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题.还好MySQL数据库提供了一种主从备份的机制,其实就是把主数据库的所有的数据同时写到备份数 ...

  2. mysql 双机 热备,MySQL双机热备方案

    以下为<MySQL双机热备方案>的无排版文字预览,完整格式请下载 下载前请仔细阅读文字预览以及下方图片预览.图片预览是什么样的,下载的文档就是什么样的. 东江湖景区智慧票务系统MySQL数 ...

  3. mysql 双机热备 原理,MySQL双机热备份的配置及原理

    A.MySQL双机热备份概述 双机热备就是使用MySQL提供的一种主从备份机制实现.所谓双机热备其实是一个复制的过程,复制过程中一个服务器充当主服务器,一个或多个服务器充当从服务.这个复制的过程实质上 ...

  4. mysql双机互备linux成功的_配置MySQL双机热备 - Linux服务器MySQL双机热备份试验_数据库技术_Linux公社-Linux系统门户网站...

    二.配置MySQL双机热备 传统模式都是采用MySQL双机互备,至于双机热备我搜索了大量的精华帖子都没有发现安装配置文档.故我的一个想法产生了:当建立新的数据库时,默认会建立到/usr/local/m ...

  5. mysql双机热备份的实现步骤

    MySQL 提供了数据库的同步功能,这对我们实现数据库的冗灾.备份.恢复.负载均衡等都是有极大帮助的.本文描述了常见的同步设置方法. 同步有两种形式: "主-从",和"主 ...

  6. 在linux下mysql双机热备份

    参考文章:https://blog.csdn.net/silentmuh/article/details/51722454 环境说明: 1.本环境使用Ubuntu18.04,mysql 5.7 2.两 ...

  7. Mysql高可用性实施方案

    Mysql高可用性实施方案 陆地 2012-11-30 目录 一.实施测试环境:.... 2 二.系统架构图.... 2 三.Mysql的安装步骤.... 3 四.主从双机热备配置步骤(异步复制功能) ...

  8. mysql双机数据热备份_mysql 双机交互热备份

    最近做mysql 双机交互热备份实验,遇到不小细节问题,在这里分享给大家 #Master IP: 192.168.0.208 #Slave  IP: 192.168.0.108 #synchroniz ...

  9. 学一点 mysql 双机异地热备份----快速理解mysql主从,主主备份原理及实践

    学一点 mysql 双机异地热备份----快速理解mysql主从,主主备份原理及实践 原文 学一点 mysql 双机异地热备份----快速理解mysql主从,主主备份原理及实践 感谢大家在上一篇 学一 ...

最新文章

  1. Ubuntu阿里云搭建Mono.net环境
  2. R语言ggplot2可视化移除轴标签、图例、主体等所有附属信息实战
  3. 华为官方:寻找AI开发者!
  4. arduino项目_quot;Arduino智能车项目quot;实战班开班!
  5. 记一次Java动态代理实践
  6. C# ASP.NET程序员整合Java门户单点登录PHPwind论坛博客软件集成项目经验总结
  7. SAP Spartacus master branch for 4.0 无法使用 yarn build
  8. 如何定制化SAP Spartacus的页面布局
  9. 哪个app最费电_关于石墨烯养生地暖,业主最关心的几大问题,答案附上!
  10. [Swift]LeetCode246.对称数 $ Strobogrammatic Number
  11. 获取repeater控件模版列中的控件
  12. 基于JAVA+Servlet+JSP+MYSQL的会议管理系统
  13. 产品研发过程管理专题——软件项目范围变更流程与过程控制研究
  14. Linux sites
  15. centos 虚拟机glibc升级_CentOS 6 glibc升级到2.15
  16. 室内定位导航地图制作问题
  17. python制作的简单程序_Python如何制作简易收银小程序
  18. 受难周第五日-团契日
  19. 自然语言处理面试基础
  20. 网络安全风险感知和发掘,练习题

热门文章

  1. Windows 10 神州网信政府版 麦克风、摄像头的使用
  2. 商务智能 BI 的四大关键技术
  3. 求救,华为S5720-36c-ei交换机vlan
  4. 斯坦福NLP名课带学详解 | CS224n 第10讲 - NLP中的问答系统(NLP通关指南·完结)
  5. python如何求阶乘_python如何求阶乘
  6. 计算机网络——各种计算
  7. c生万物之初识c语言
  8. W13电力线载波通信技术
  9. 软件工程基础知识--运行和维护
  10. java 微信转账 ca_error_微信支付退款接口调用证书出现错误