Moodle database connection error

16,692

After more investigation. I found that this was due to "mysql on OS X gets the locations of the required sock file a bit wrong". Once I created the sym links required for the mysql sock file everything worked.

See linked issue for details.

Share:
16,692
Ryan-Neal Mes
Author by

Ryan-Neal Mes

Love coding, love the outdoors ... conflicting passions always in flux :) Find me on linkedin

Updated on June 30, 2022

Comments

  • Ryan-Neal Mes
    Ryan-Neal Mes almost 2 years

    I am trying to setup moodle and running into a connection problem. See the config below:

    <?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');
    

    I am getting a database connection error. See the error below:

    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
    

    Things I have done

    • Logged in with the root user via terminal and checked I can see the database with show databases;. This works fine.
    • Checked the settings are correct over and over.
    • Compared the config file to teams setup and it's pretty much the same.
    • Ensured the mysqli module is enabled for PHP. It is.

    What can I do to figure out what is causing this database connection error?