我正在通过添加新表来更新实时数据库。
有没有办法,如果这些更新出错,还原原来的?
由于
答案 0 :(得分:5)
是。通过备份第一次 ..
答案 1 :(得分:3)
如果您要更改实时数据库,那么确实需要在开始之前进行备份,理想情况是在您从任何前端网站删除访问权限等之后这样就没有“活跃”的数据库活动了。 (如果您使用InnoDB而不是MyISAM表,这不是问题。)此外,您应该在执行更改时理想地阻止对数据库的所有访问,否则如果您必须更改,则可能会丢失更改将数据库回滚到以前的状态。
要创建备份,最简单的解决方案是使用与MySQL捆绑在一起的mysqldump命令行工具。这将创建一个文本文件,您可以使用该文件将数据库还原到其原始状态。
作为提示,您可能需要特别注意“--add-drop-table”选项,因为如果您想要使用备份文件的内容踩踏任何内容,这将非常有用。 (N.B。:这当然会消除所有“当前”数据。)
最后,如果您要进行任何重大更改,那么您真的想:
创建一个执行所有必需ALTER等的脚本(然后您可以通过“mysql < [text file name]
”从命令行执行脚本。)
使用mysqldump
转储数据库的当前内容,然后使用此数据设置测试数据库,以确保您的更改实际按预期工作。