A telepítés egyszerű rutinfeladat tűnt, azonban mindig akadhatnak apróbb döccenők, mint ahogyan az jelen esetben is történt. A következő komponensekből építkeztünk:
- Debian Jessie 8.2
- Apache 2.4
- PHP 5.6
- MariaDB 10.1
- Moodle 3.0
A telepítés során kapásból MariaDB-t telepítettünk a MySQL helyett, és a Moodle volt az első alkalmazás, amely helyet kapott a szerveren. Azonban a Moodle telepítése közben az alábbi hibaüzeneteket kaptuk a böngészőben:
Debug info: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED. INSERT INTO mdl_message_providers (name,component,capability) VALUES(?,?,?) [array 0 => 'notices', 1 => 'moodle', 2 => 'moodle/site:config', )] Error code: dmlwriteexception
És rögtön alatta még ezt is:
Stack trace: line 446 of /lib/dml/moodle_database.php: dml_write_exception thrown line 1164 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end() line 1210 of /lib/dml/mysqli_native_moodle_database.php: call to mysqli_native_moodle_database->insert_record_raw() line 274 of /lib/messagelib.php: call to mysqli_native_moodle_database->insert_record() line 1537 of /lib/upgradelib.php: call to message_update_providers() line 269 of /admin/index.php: call to install_core()
A megoldás pedig a következő: a /etc/mysql/my.cnf fájlban, a [mysqld] szekcióba az alábbi sort szúrtuk be:
binlog_format = mixed
A MariaDB kiszolgáló újraindítása után ment minden, mint a karikacsapás. A bináris naplófájlok beállításáról pedig itt olvashatsz bővebben.