Mysql 是否在备份中包含IBU日志文件?

Mysql 是否在备份中包含IBU日志文件?,mysql,backup,Mysql,Backup,简短的问题: 使用InnoDB引擎创建MySQL安装的定制备份时跳过ib_logfile*文件是否安全 定制备份只是将/var/lib/mysql+/etc/my.cnf的全部(或子集)复制到安全的地方 据我所知,ib_logfile*文件是由MySQL在start+上重新创建的,这些文件非常庞大,因此将它们存储在备份中可能不明智。是的,假设MySQL在备份之前(正确地)停止。以您描述的方式备份数据库是不安全的 原因是您无法知道某些数据页是否仍在MySQL服务器的内存中,等待I/O刷新到磁盘。因

简短的问题:
使用InnoDB引擎创建MySQL安装的定制备份时跳过ib_logfile*文件是否安全

定制备份只是将/var/lib/mysql+/etc/my.cnf的全部(或子集)复制到安全的地方


据我所知,ib_logfile*文件是由MySQL在start+上重新创建的,这些文件非常庞大,因此将它们存储在备份中可能不明智。是的,假设MySQL在备份之前(正确地)停止。

以您描述的方式备份数据库是不安全的

原因是您无法知道某些数据页是否仍在MySQL服务器的内存中,等待I/O刷新到磁盘。因此,无论是否包含
ibu日志
文件,复制文件都有很好的机会复制垃圾

不要做你正在做的事。使用mysqlbackup或InnoDB的产品

编辑:

阅读Farhan Mashraqi关于的博客文章,他在文章中说,如果你关闭了MySQL服务器,你可以删除
ibu日志
文件

InnoDB日志大小调整:没有那么简单 如更改选项和重新启动。你 需要关闭MySQL服务器和 确保它正常关闭 (检查错误日志中的错误,以便 确认)。然后移开InnoDB日志 文件IBU日志*。然后启动MySQL 服务器,并检查错误日志文件 查看是否成功创建了新日志 档案

所以,是的,您应该能够只复制
ibdata
文件的文件系统副本。您不需要包含
ibu日志
文件,因为它们应该在MySQL服务器启动时重新创建。但是,我重申,我不建议使用文件系统副本备份数据库。


假设您现在使用MySQL 5.0以这种方式备份数据库。有一天,您需要恢复备份,但到那时,您将使用一些未来版本,例如MySQL 6.5。
ibu数据
文件在未来版本中是否仍使用相同的内部格式?MySQL 6.5会读取您今天备份的文件吗?你不能肯定。备份格式旨在更具可移植性。

即使我停止了MySQL服务器?如果您停止MySQL服务器,这会更安全,但我仍然不建议这样做。见上面的评论。有很多好的工具可以安全地进行备份,为什么不使用它们呢?这就是现有系统现在的工作方式——非常简单。今天我无法改变整个备份子系统。