Неустранимая ошибка: неперехваченное исключение dml_exception: таблица «config» не существует при настройке Moodle 3.1 в первый раз

#php #database #postgresql #permissions #moodle

#php #База данных #postgresql #разрешения #moodle

Вопрос:

Я пытаюсь впервые настроить Moodle 3.1 в своей локальной среде разработки.

Когда я вхожу в процесс установки, я получаю следующую ошибку:

( ! ) Неустранимая ошибка: Неперехваченное исключение dml_exception: таблица «config» не существует в /Library/WebServer/Documents/moodle/lib/dml/moodle_database.php в строке 621

( !) Исключение dml_exception: таблица «config» не существует в /Library/WebServer/Documents/moodle/lib/dml/moodle_database.php в строке 621

Я использую PostgreSQL, и моя база данных настроена следующим образом:

                                    List of databases
    Name     |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
------------- ---------- ---------- ------------- ------------- -----------------------
 moodle      | moodle   | UTF8     | en_AU.UTF-8 | en_AU.UTF-8 | 
 postgres    | martyfenwick | UTF8     | en_AU.UTF-8 | en_AU.UTF-8 | 
 template0   | martyfenwick | UTF8     | en_AU.UTF-8 | en_AU.UTF-8 | =c/martyfenwick           
             |          |          |             |             | martyfenwick=CTc/martyfenwick
 template1   | martyfenwick | UTF8     | en_AU.UTF-8 | en_AU.UTF-8 | =c/martyfenwick           
             |          |          |             |             | martyfenwick=CTc/martyfenwick
 testdb      | testdb   | UTF8     | en_AU.UTF-8 | en_AU.UTF-8 | 
(7 rows)
  

Я создал базу данных и пользователя БД с помощью следующих команд:

 createuser -SRDP moodle
createdb -E utf8 -O moodle moodle
  

Когда я создал пользователя, я выбрал PW, который я использую в своем config.php ниже.

Это мой config.php:

 <?php  // Moodle configuration file

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

$CFG->dbtype    = 'pgsql';
$CFG->dblibrary = 'native';
$CFG->dbhost    = 'localhost';
$CFG->dbname    = 'moodle';
$CFG->dbuser    = 'moodle';
$CFG->dbpass    = 'mypasswordinhere';
$CFG->prefix    = 'mdl_';
$CFG->dboptions = array (
  'dbpersist' => 0,
  'dbport' => 5432,
  'dbsocket' => '',
);

$CFG->wwwroot   = 'http://moodle.dev';
$CFG->dataroot  = '/Library/WebServer/Documents/moodledata';
$CFG->admin     = 'admin';

$CFG->directorypermissions = 0777;

// Force a debugging mode regardless the settings in the site administration
@error_reporting(E_ALL | E_STRICT);   // NOT FOR PRODUCTION SERVERS!
@ini_set('display_errors', '1');         // NOT FOR PRODUCTION SERVERS!
$CFG->debug = (E_ALL | E_STRICT);   // === DEBUG_DEVELOPER - NOT FOR PRODUCTION SERVERS!
$CFG->debugdisplay = 1;              // NOT FOR PRODUCTION SERVERS!

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

// There is no php closing tag in this file,
// it is intentional because it prevents trailing whitespace problems!
  

Я также попытался запустить установку из командной строки с php admin/cli/install.php помощью, но затем я получаю это:

PHP Фатальная ошибка: неперехваченная ошибка: вызов функции-члена is_temptable() с нулевым значением в /Library/WebServer/Documents/moodle/lib/dml/pgsql_native_moodle_database.php:393

Я не понимаю, что я здесь делаю не так и почему я не могу построить свою схему БД (которая в настоящее время пуста).

Комментарии:

1. Вы прошли процедуру установки, которую предоставил moodle? В какой момент вы получили эту ошибку в процедуре установки moodle?