你好,我是灯。今天我们一起学习如何优雅安全地备份MySQL数据。
首先,让我们看一下为什么要备份MySQL数据。
用一句话概括,就是为了保证数据的安全。
如果只将数据存储在一个位置,物理系统受损,数据将丢失,无法恢复。
此外,在手动修改联机数据之前,为了安全起见,必须先备份数据。防止因人为误操作而玷污或丢失数据。
但是,这些备份可能包含肮脏的数据。例如,在备份数据的过程中,订购的工作正在进行。
订购后,在扣除之前执行数据备份命令,将出现肮脏的数据。
订单,保存订单表单
备份数据
打开事务可能会导致正常的业务操作和锁定资源争用,阻止其他业务操作,并导致严重的服务停机,因此可以在业务使用量低的时间段执行备份操作。。
另一个问题是,只有InnoDB引擎支持事务命令。对于不支持的事务MyISAM引擎,备份数据时如何确保数据安全?
一种粗暴的方法是将整个库设置为只读,并禁止写入操作。这样可以确保备份时的数据安全。
首先,使用命令检查数据库的只读状态。
OFF表示关闭只读模式,ON表示打开只读模式。
这个设定其实很危险。如果客户端连接丢失,整个数据库也始终处于只读模式,因此无法写入。
建议设置全局锁定带read lock的FTWRL。
设置全局锁定后,如果客户端断开连接,锁定将自动解除,更加安全。
通过备份文件恢复数据也很简单。
发表评论