2016-12-27 34 views
0

我将一个Drupal 7x站点部署到Digital Ocean Ubuntu 16.04服务器上进行测试和演示。我将服务器php版本从php7切换到PHP 5.6,但使用默认版本的Mysql和Apache2。我没有安装网站和网站功能的问题;然而,我经常有数据库相关的错误,具体而言,以下之一:如何诊断(并修复)从Ubuntu 16服务器上的drupal 7站点的持久性mysql错误?

PDOException: SQLSTATE[HY000] [2002] Connection refused in lock_may_be_available() (line 167 of /var/www/html/phisigmarho.org/includes/lock.inc). 

通常我得到这个错误,但我也得到“的网站出现错误”错误或“MySQL服务器已消失” - 当我做任何事情数据库或过程密集型(通过UI更新模块等)。我是一个相对较新的服务器管理部门,所以我不确定可能会出现什么问题,或者我应该查看哪些日志,以找出错误的线索。目前,从终端重新启动MySQL让我继续设置网站,但我不能让任何人按照现在的方式使用网站。

所以,我怎么弄清楚为什么MySQL总是要离开?我很困惑,因为服务器与我的开发机器(运行php5.6的ubunutu 16桌面)的配置非常类似,而且我没有任何类似的事情发生。我在哪里寻找有意义的日志,这将有助于我诊断此问题。那么,想法?

回答

0

在这种情况下,我会尝试几件事情。

  • 安装Drush(如果还没有的话)。 然后看看你对下面的命令:

    • drush status - 检查站点配置看起来是正确的,包括数据库连接
    • drush sqlc - 这将使用在设置中指定的连接信息,请登录您进入MySQL命令行.PHP。这是值得确保这方面成功
    • drush cc all打开 - 清除您的网站的缓存迁移到一个新的环境时,始终是一个好主意。
  • 如果仍然不能工作,我会截断Drupal数据库中的所有cache_ *表。我看到类似于上面的错误,并且正常缓存清除不足以解决它。

  • 确保Drupal的看门狗被启用。 drush en dblog。然后您可以使用Drush查看看门狗日志条目,例如drush ws

  • 检查PHP日志。您可能需要联系Digital Ocean以获取位置和访问权限。

+0

此帮助下,结束了一个配置问题 – nizz0k