![](/img/trans.png)
[英]PDOException::("SQLSTATE[HY000] [2002] Connection refused" in laravel
[英]Drupal: PDOException: SQLSTATE[HY000] [2002] Connection refused in lock_may_be_available()
我尝试在本地服务器上安装Drupal,并且一切正常。 我在本地主机上安装了Drupal,然后尝试使用FileZilla在服务器上传输相同的Drupal目录。 按照我的服务器MySql设置更改了我的settings.php
文件,如下所示:
$databases = array (
'default' =>
array (
'default' =>
array (
'database' => 'manas_drupal',
'username' => 'XXXXXXX',
'password' => 'XXXXXXX',
'host' => '127.0.0.1',
'port' => '',
'driver' => 'mysql',
'prefix' => '',
),
),
);
但是,当我尝试访问应该存在Drupal安装的网站时,遇到以下错误:
PDOException: SQLSTATE[HY000] [2002] Connection refused in lock_may_be_available() (line 167 of /home/manasge/manas.getevangelized.com/drupal/includes/lock.inc).
现在, lock.inc
第167 lock.inc
包含以下功能:
function lock_may_be_available($name) {
$lock = db_query('SELECT expire, value FROM {semaphore} WHERE name = :name', array(':name' => $name))->fetchAssoc();
if (!$lock) {
return TRUE;
}
$expire = (float) $lock['expire'];
$now = microtime(TRUE);
if ($now > $expire) {
// We check two conditions to prevent a race condition where another
// request acquired the lock and set a new expire time. We add a small
// number to $expire to avoid errors with float to string conversion.
return (bool) db_delete('semaphore')
->condition('name', $name)
->condition('value', $lock['value'])
->condition('expire', 0.0001 + $expire, '<=')
->execute();
}
return FALSE;
}
这里似乎有什么问题? 一切都可以在我的本地主机上正常运行,但是我似乎无法在我的主主机上正常工作。 作为参考,以下是托管我的Drupal目录的链接: http://manas.getevangelized.com/drupal/
: http://manas.getevangelized.com/drupal/
另外,我已经在PHPMyAdmin中定义了一个名为manas_drupal
的空数据库。 另外,我确保在settings.php
中正确输入了MySQL的用户名和密码。
这发生在我身上,是因为运行MySQL的服务器已经终止了该进程,尽管发生这种情况的具体细节并不重要。 当我的drupal实例连接到数据库时,它被赋予“拒绝连接”。
然后,我尝试直接连接到数据库,但是连接时遇到类似的问题。 我在这里找到的一个线程建议重新启动MySQL。 当我检查MySQL的状态时,它给了我以下错误:
$ sudo服务mysql状态
MySQL未运行,但锁文件(/ var / lock / subsys / mysql [FAILED]
重新启动它之后,我的drupal实例再次正常运行。
您的数据库不应为空,请从localhost导出数据库,然后将其导入在线服务器中的空数据库中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.