Ошибка установки ilias(на ubuntu 16): база данных недоступна. Пожалуйста, проверьте учетные данные, и если база данных существует

В качестве заголовка я попытался установить ilias на Ubuntu 16.

Когда я создаю новый клиент, в блоке имени базы данных появляется ошибка:

"База данных не может быть достигнута. Пожалуйста, проверьте учетные данные и если база данных существует-" об ошибке

Я попытался переустановить MySQL, и установленные детали показали, что:

"Определение учетных данных локального хоста из /etc/mysql/debian.cnf: успешно."

Поэтому я подумал, что проблема с учетными данными не имеет ошибки.

Но сейчас я настолько растерялся, что как показать, что я делаю, чтобы решить эту ошибку.

Что я должен делать?

2 ответа

Не уверен, что вы все еще работаете над этой проблемой, но есть два шага, которые вы можете выполнить.

Шаг 1: Убедитесь, что ваша система правильно настроена. Проверьте, можете ли вы подключиться к вашей локальной базе данных, выполнив:

mysql -u username -p -h yourHost (yourHost is probably localhost)

Если вы не можете подключиться, вам следует ознакомиться с руководством по mysql о том, как настроить и подключиться к базе данных. Если вы можете подключиться, убедитесь, что у вас есть правильный файл client.ini.php (расположенный в ilias / data / iliasClient), должен выглядеть так:

[db] <-- This is the section you need to look at
type = "innodb"
host = "yourHost"
user = "user"
pass = "password"
name = "db_name"
structure_reload = "0"

(Вы также можете прочитать следующую ветку: https://www.ilias.de/docu/goto_docu_frm_1875_4446.html).

Если это по-прежнему не работает, перейдите к шагу 2.

Шаг 2. Для пользовательских портов или другой нестандартной конфигурации

В следующем потоке обсуждается проблема подключения к БД с использованием нестандартных портов: https://www.ilias.de/docu/goto_docu_frm_1875_4488.html. К сожалению на немецком языке.

Краткая версия решения для этого заключается в том, что, похоже, существует проблема с подключением к mysql с использованием портов, отличных от портов по умолчанию. Проверьте связанный поток для файла исправления, если вы используете не последнюю версию или ILIAS, или обновите последнюю версию в git, которая должна решить проблему.

Недавно я столкнулся с той же проблемой. После изучения я обнаружил, что файл Database/classes/PDO/class.ilDBPdoMySQL.phpна линии 33, функция initSqlMode(), внутри запроса содержалось недопустимое значение: NO_AUTO_CREATE_USER.

Я удалил это значение, и это сработало.

Окончательный фрагмент кода должен выглядеть так:

      protected function initSQLMode()
{
    $this->pdo->query("SET SESSION sql_mode = 'IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';");
}

(Проверено на ИЛИАС 5.4)

Другие вопросы по тегам