备份mysql二进制文件

时间:2011-11-10 13:37:24

标签: mysql database database-backups

我需要知道这是否是正确的方法(备份时不会丢失写入的数据)来备份二进制文件?

1

LOCK TABLES
    tbl_0 READ,
    tbl_1 READ,
    tbl_2 READ

FLUSH TABLES WITH READ LOCK

2。

copy *.frm, *.myd, *.myi files

3。

UNLOCK TABLES

1 个答案:

答案 0 :(得分:3)

这样做是不够的。

最好是完全关闭数据库,并复制数据目录的全部内容。

或者,您可以让数据库保持运行并获取原子文件系统快照。

如果您确定只使用MyISAM表(并且InnoDB在您的系统中完全禁用,就像其他引擎一样),您可能会在使用“FLUSH TABLES WITH READ LOCK”的全局锁定下进行转储。这确实会对系统产生影响,但并不像关机一样糟糕。

请注意,如果您有任何InnoDB表 - 任何表,存在于服务器中的任何位置 - 那么您就不能以这种方式进行备份。 “使用READ LOCK的FLUSH表格”不足以备份innodb。