自学内容网 自学内容网

第15章 大数据备份企业实战

随着互联网不断的发展,企业对运维人员的能力要求也越来越高,尤其是要求运维人员能处理各种故障、专研自动化运维技术、云计算机、虚拟化等,满足公司业务的快速发展。

本章向读者介绍数据库备份方法、数量量2T及以上级别数据库备份方案、xtrabackup企业工具案例演示、数据库备份及恢复实战等。

15.1 企业级数据库备份实战

在日常的运维工作中,数据是公司非常重要的资源,尤其是数据库的相关信息,如果数据丢了,少则损失几千元,高则损失上千万。所以在运维工作中要及时注意网站数据的备份,尤其要及时对数据库进行备份。

企业中如果数据量上T级别,维护和管理是非常复杂的,尤其是对数据库进行备份操作。

15.2 数据库备份方法及策略

企业中MySQL数据库备份最常用的方法如下:
 直接cp备份
 Sqlhotcopy
 主从同步复制
 Mysqldump备份
 Xtrabackup备份

Mysqldump和Xtrabackup均可以备份MYSQL数据,如下为Mysqldump工具使用方法:
通常小于100G的MYSQL数据库可以使用默认Mysqldump备份工具进行备份,如果超过100G的大数据,由于Mysqldump备份方式是采用的逻辑备份,最大的缺陷是备份和恢复速度较慢。

基于Mysqldump备份耗时会非常长,而且备份期间会锁表,锁表直接导致数据库只能访问Select,不能执行Insert、Update等操作,进而导致部分WEB应用无法写入新数据。

如果是Myisam引擎表,当然也可以执行参数–lock-tables=false禁用锁表,但是有可能造成数据信息不一致。
如果是支持事务的表,例如InnoDB和BDB,–single-transaction参数是一个更好的选择,因为它不锁定表。

mysqldump -uroot -p123456 --all-databases --opt --single-transaction > 2022all.sql

其中 --opt 快捷选项,等同于添加 --add-drop-tables --add-locking --create-option --disable-keys --extended-insert --lock-tables --quick --set-charset 选项。

本选项能让 Mysqldump 很快的导出数据,并且导出的数据能很快导回。该选项默认开启,但可以用–skip-opt 禁用。

如果运行 Mysqldump没有指定–quick 或 --opt 选项,则会将整个结果集放在内存中。如果导出大数据库的话可能会导致内存溢出而异常退出。

15.3 Xtrabackup企业实战

Mysql冷备、Mysqldump、Mysql热拷贝均不能实现对数据库进行增量备份,在实际环境中增量备份非常的实用,如果数据量小于100G,存储空间足够,可以每天进行完整备份,如果每天产生的数据量大,需要定制数据备份策略例如:每周日使用完整备份,周一到周六使用增量备份,或者每周六完整备份,周日到周五使用增量备份。

Percona-xtrabackup是为实现增量备份而生一款主流备份工具,Xtrabackup有两个主要的工具,分别为:xtrabackup、innobackupex。

Percona XtraBackup是 Percona 公司开发的一个用于 MySQL 数据库物理热备的备份工具,支持 MySQl、Percona Server及MariaDB,开源免费,是目前互联网数据库备份最主流的工具之一。

Xtrabackup只能备份InnoDB和XtraDB两种数据引擎的表,而不能备份MyISAM数据表,Innobackupex-1.5.1则封装了Xtrabackup,是一个封装好的脚本,使用该脚本能同时备份处理innodb和Myisam,但在处理Myisam时需要加一个读锁。

XtraBackup备


原文地址:https://blog.csdn.net/lihuhelihu/article/details/143784283

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!