基本上,我需要停止它。(这样我就可以在没有新数据的情况下进行备份)。一切都“冻结”。
那么,我该如何启用它以便人们可以再次对其进行更改?
答案1
扩展 3dinfluence 的回答。mysqldump 将在转储表之前用读锁锁定表(这就是您说“冻结”时所要的效果)。根据您的存储引擎,UPDATES(可能还有 SELECTS)将排队等待,直到转储完成(此时它将解锁表)。
如果您想手动执行此操作,您需要的命令将是类似的(如果您不想要全局锁,请进行调整以适应)。
flush tables with read lock;
这将应用全局锁并刷新查询缓存。然后你可以使用以下命令移除锁
unlock tables;
答案2
您只需使用 mysqldump 命令即可获取正在运行的数据库的快照,而无需锁定或冻结它。