Moodle数据库连接错误

时间:2015-06-15 15:36:26

标签: php moodle

我正在尝试设置moodle并遇到连接问题。请参阅以下配置:

<?php  // Moodle configuration file

unset($CFG);
global $CFG;
$CFG = new stdClass();

$CFG->dbtype    = 'mysqli';
$CFG->dblibrary = 'native';
$CFG->dbhost    = 'localhost';
$CFG->dbname    = 'gs_vle';
$CFG->dbuser    = 'root';
$CFG->dbpass    = 'root';
$CFG->prefix    = 'mdl_';
$CFG->dboptions = array (
 'dbpersist' => 0,
 'dbport' => '',
 'dbsocket' => '',
);

$CFG->wwwroot   = 'http://localhost/~ryanme/work/vle/';
$CFG->dataroot  = '/Users/ryanme/sites/work/moodledata';
$CFG->admin     = 'admin';

$CFG->directorypermissions = 0777;

require_once(dirname(__FILE__) . '/lib/setup.php');

我收到数据库连接错误。 请参阅以下错误:

Error: Database connection failed

It is possible that the database is overloaded or otherwise not running properly.

The site administrator should also check that the database details have been correctly specified in config.php

Warning: mysqli::mysqli(): (HY000/2002): No such file or directory in /Users/ryanme/Sites/work/vle/lib/dml/mysqli_native_moodle_database.php on line 79

我做过的事情

  • 通过终端使用root用户登录并选中我可以使用show databases;查看数据库。这很好。
  • 一遍又一遍地检查设置是否正确。
  • 将配置文件与团队设置进行比较,它几乎相同。
  • 确保为PHP启用了mysqli模块。它是。

如何找出导致此数据库连接错误的原因?

3 个答案:

答案 0 :(得分:1)

经过更多的调查。我发现这是由于OS X上的&#34; mysql获取所需的sock文件的位置有点错误&#34;。一旦我创建了mysql sock文件所需的sym链接,一切正常。

有关详细信息,请参阅linked问题。

答案 1 :(得分:0)

我遇到了同样的问题。为了解决这个问题,我把服务器的名称改为localhost

user_input_vars_from_json;

答案 2 :(得分:0)

在安装应用程序更改Moodle的数据库密码后,出现此错误。为了解决这个问题,我更新了Moodle config.php中的密码,而且确实可以解决我的问题。

也许Moodle应该有一些原始数据库错误,例如“数据库连接失败”?这样可以节省大量时间,而不是那种通用错误。只是一个建议。