前端之家收集整理的这篇文章主要介绍了
mysql – 冷备份期间网站数据库写入的最佳实践?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设您有一个大型的,受欢迎的数据库驱动的网站.整天都有人在这里整夜.他们访问读取和写入数据库的页面.
实施每日数据库备份计划时,它涉及执行冷备份,这意味着您在备份过程中临时关闭数据库或锁定表.这可确保在备份发生时不会将新数据插入数据库.
编写站点控制器和模型的一些好方法是什么,以便它们不会因表锁或数据库脱机而失败?您是否需要实现某种类型的数据库写队列系统或类似的东西?或者只是让整个网站暂时离线?或者只是进行实时备份而不锁定或关闭任何东西?什么是好方法?
最佳答案
使用复制,这是一个简单的场景
1个主设备A,2个从设备B,C
>在正常操作期间,您的应用程序应在A,B和C之间进行负载平衡
>在备份期间,您的应用程序不应该从A读取/写入
>缓解A从掌握,促进B掌握,改变奴隶C听B
>使用A进行备份
>备份完成后
>改变A从B听(这意味着A从现在起成为奴隶)
>当A赶上B时(不再有延迟),将应用程序更改为A,B,C之间的负载平衡
对于第2天,只需重复整个周期,当然主人现在是B.