在不中断当前用户的情况下,在繁忙的网站上重启 MySQL 服务器有哪些普遍接受的策略?我正在使用 LAMP 设置。如果需要的话,我不介意暂时关闭网站,但如果某些用户事件被打断,我可能会得到损坏的数据。如果这有助于过渡,我确实有能力启动第二台服务器。我需要一个不会导致数据损坏/数据丢失的解决方案。
我怀疑这可能是一个没有简单解决方案的常见问题,但不确定最佳方法是什么。任何指导将不胜感激。
谢谢,布莱恩
最佳答案
任何高可用性解决方案都依赖于冗余。
今天最流行的策略是run two MySQL servers .配置两台服务器进行双向复制。这带来了自身的挑战;您必须仔细管理您的应用程序,一次只写入一台服务器,以避免产生更新冲突。当你需要重启一台 MySQL 服务器时,switch your apps to use the other MySQL server .
即使使用此配置,您也无法在不中断连接的情况下进行切换,即使中断时间很短。
另一种解决方案是 MySQL Cluster ,其中 MySQL 服务器和存储都是冗余的,但设置和管理起来也很复杂,需要高端硬件资源,并且以难以针对一般 SQL 查询进行优化的方式对数据进行分片。
关于mysql - 在不中断用户的情况下重启 MySQL 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6418274/