重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章将为大家详细讲解有关备份MySQL数据库时需要注意哪些事项,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
创新互联公司是专业的庆城网站建设公司,庆城接单;提供成都做网站、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行庆城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!对于MySQL备份,每个DBA的理解可能都不一样,备份可以分为下面几个维度:
文件种类划分:
1、物理备份,以xtrabackup为代表的物理备份是最常用的备份方法,经常被用在备份大的数据库上面。
2、逻辑备份,以mysqldump为代表的逻辑备份,小于50G的数据量,用该工具备份起来比较合适。
按照备份内容划分:
1、全量备份,这个容易理解,就是数据库完整的一个备份
2、增量备份,基于全量备份的基础之上的,例如全量备份备份截止日期是昨天,那么昨天到今天这部分数据就是增量备份
3、日志备份,日志备份是在备份文件的基础上,再对mysql的binlog进行备份,我们知道binlog中记录了mysql的DDL和DML操作,利用binlog能够还原数据库的某个中间状态。
今天在梳理线上的备份内容的时候,发现了以下一些可能有用的知识点,罗列出来,如果对大家有帮助,那是好的,如果没有,权当我自嗨吧~
1、当我们使用xtrabackup备份的时候,对于单机多实例的机器,好分开时间备份,因为同一时间备份多个MySQL实例吗,会对磁盘IO影响较大,此时如果还有其他数据写入,会产生影响
2、可以利用NFS挂载的方式,将本地的数据备份在远程机器上,这样可以缓解本地的备份压力,同时可以保证本地硬盘出现问题不影响数据恢复。应用此种方法的时候,需要考虑机器之间的网络带宽。架构图如下:
3、我们知道,xtrabackup备份完的备份文件,如果我们用来恢复,需要进行了两个步骤,第一步是apply_log,第二步是copy back,建议是备份完成之后,直接进行apply log的操作,一旦失败,还可以再备份一次,否则如果默认可用,等到恢复的时候发现有问题,就比较难办了
4、基于binlog做增量恢复也是一种比较方便的做法,既按照一定的周期进行全量备份,然后定时备份binlog,这期间的任意时间点的数据都可以通过备份的binlog进行恢复
5、如果线上机器有多台,我们可以通过mysqldump和xtrabackup结合的方式进行备份,设定一个阈值,例如50G,50G以下的数据量,mysqldump的性能比较好,50G以上的数据量,可以考虑使用xtrabackup的方法来进行备份
6、备份数据的目的是为了恢复,好能在备份完成之后,尝试恢复一把,保证备份数据的可用性。
7、对于数据量较大的实例,有时候备份的时间特别长,恢复起来也不方便,可以利用跨机房从库的方法来进行数据备份,此时可以搭建一个延迟从库,以便在主库误操作的时候,从库可以及时的停止,跳过相关的误操作步骤。
关于备份MySQL数据库时需要注意哪些事项就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。