MYSQL热备份:不错过任何一秒钟(mysql支持热备份)
MySQL数据库是由许多企业和组织使用的数据平台,可靠性和可用性是其重要性重要性之一。有时候,不得不更新服务器硬件或者系统固件,MySQL数据恢复也许是必不可少的部分。在这种情况下,进行MySQL热备份将是一种首选的方式,这不但可以更容易恢复备份数据,也能保证数据的完整性。
MySQL热备份就是在数据库持续运行的情况下进行备份,不会影响原来的数据库查询。它通过数据库本身提供的备份方式进行备份,这样可以大大减少备份损耗。
首先要做的是执行FLUSH TABLES WITH READ LOCK,这会将MySQL查询锁定,并从二进制日志文件中复制出来:
mysql> FLUSH TABLES WITH READ LOCK;
紧接着,可以运行“mysqldump”来备份数据:
$ mysqldump –all-databases > all_databases_dump.sql
最后,要执行UNLOCK TABLES,来释放查询锁,以便允许用户连接和操作数据库:
mysql> UNLOCK TABLES;
MySQL热备份也可以使用Percona软件。Percona包含一个工具“XtraBackup”,可以实现MySQL不停机状态下快速备份以及恢复。XtraBackup这个专业的备份工具可以进行未加密、像素级别的备份,而且安装使用非常简单:
$ apt-get install percona-xtrabackup
MySQL热备份可能不能像完全的离线备份那样灵活,但却不错过任何一秒钟。热备份的好处是能够在服务器持续运行的情况下,安全的备份、恢复数据库,这对于某些无法停止的工作环境来说,非常重要。同时,它还能保证备份数据的完整性和可读性,使得MySQL数据能够得到有效的恢复。