gpt4 book ai didi

php - 网站应如何处理数据库崩溃

转载 作者:可可西里 更新时间:2023-11-01 00:17:07 24 4
gpt4 key购买 nike

我目前正在用 php 创建一个网站,它有一个数据库后端(可以是 MySQL 或 SQL Server),我最近意识到,如果我的数据库在任何时候崩溃,我的网站将无法正常运行,并且可能会引起一些麻烦。

那么,如果我的数据库(或任何重要的外部组件)出现故障,在网站上显示什么才是正确的?我的特定网站严重依赖其数据库,没有它几乎毫无用处。

我被告知的一个选择是给网站管理员发送电子邮件并显示一个错误 500 页面,该页面表示服务器出现问题并且基本上使网站无法使用,直到问题得到解决。我还能做些什么来解决这个问题吗?有没有什么方法可以设计一个网站,使数据库(任何关键组件)崩溃不再是一个问题?

我正在寻找一般经验法则以及过去人们如何解决此问题的具体示例。此外,这些示例不仅适用于我的网站示例。

最佳答案

如果您只有一个数据库服务器,并且网站没有它的数据库就无法工作,那么没有魔法:您必须显示某种不错的错误页面通知用户 出现技术问题,网站将很快恢复。

一般来说:

  • 出现这种问题的可能性很低
  • 如果您的网站正常,人们往往会偶尔接受一个问题,尤其是当您就此进行交流时。


如果您负担得起(并且具备设置它的技术知识),您可以使用两个数据库服务器,在它们之间进行复制(MySQL 支持):一个主服务器,你使用的,和一个奴隶,这被认为是备份。

然后,如果 master 掉线,您的应用程序将使用 slave。


当然,这将大大降低与数据库相关的问题的风险(两台服务器同时崩溃的可能性很小),但是您仍然会遇到所有其他组件的问题——比如您的网络服务器:如果您只有一个,您可能想考虑使用两个,第二个作为后备。

在那之后,如果您仍然有钱(并且认为您的网站需要更长的正常运行时间),您将需要考虑当您的数据中心出现问题时的情况——设置在两个不同的位置建立服务器...

关于php - 网站应如何处理数据库崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5185537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com