Durchsuchbare Dokumentation aufrufen

Zurück zur Dokumentationsübersicht

MariaDB-Datenbank einrichten

Die MariaDB-Datenbank ist die empfohlene Datenbank, um auf die Daten über agorum core zuzugreifen.

Der empfohlene Datenbanktreiber für die Kommunikation zwischen agorum core und der MariaDB-Datenbank ist der MariaDB-JDBC-Treiber. Ohne diesen könnten Sie nicht über agorum core auf die Daten innerhalb der MariaDB-Datenbank zugreifen.

Hinweis: Bei älteren Versionen von agorum core war es erforderlich, den erforderlichen MySQL-Treiber manuell zu installieren und gegen den mitgelieferten Drizzle-Treiber auszutauschen. Für weitere Informationen siehe die Dokumentation zu älteren Versionen von agorum core.

Die Datenbank warten


agorum übernimmt nicht die Wartung der Datenbank, auch nicht von der mitgelieferten. Beachten Sie auch, dass keinesfalls schreibend auf die Datenbank zugegriffen werden darf, außer von agorum core selbst. Sonst kann es schnell vorkommen, dass die Datenbank zerstört und keine kostenfreie Wartung mehr gegeben ist.

Ein Großteil der Performance von agorum core hängt von der Performance dieser Datenbank ab. Die wichtigsten Faktoren für eine gute Performance sind:

Seien Sie auch bei eigenständigen Änderungen vorsichtig:

Verbindung über localhost statt roihost


Standardmäßig erfolgt die Verbindung bei Windows-Installationen über localhost. Ältere Versionen verwenden häufig noch roihost. Um diesen auf localhost umzustellen, sind 2 Anpassungen erforderlich:

  1. Ersetzen Sie in der Datei mysql-ds.xml den roihost durch localhost in der folgenden Zeile:
    <connection-url>
  2. Passen Sie die Datenbankrechte an, sodass sich localhost verbinden darf (siehe nachfolgender Abschnitt).

Datenbankrechte anpassen

  1. Beenden Sie agorum core und starten Sie die Datenbank über den Dienst.
  2. Verbinden Sie sich mit der Datenbank über die Konsole:
    <InstallDir>/mysql/bin/mysql.exe -uroot -p -hroihost --port=3306 mysql
  3. Geben Sie das gültige Passwort für den Benutzer root ein.
  4. Nach erfolgreicher Verbindung mit dem mysql-Schema werden die folgenden Rechte gesetzt:
    <InstallDir>/mysql/bin/mysql.exe -uroot -p -hroihost --port=3306 mysql
    <InstallDir>/mysql/bin/mysql.exe -uroot -p -hroihost --port=3306 mysql
    <InstallDir>/mysql/bin/mysql.exe -uroot -p -hroihost --port=3306 mysql
  5. Prüfen Sie, ob sich localhost verbinden kann:
    <InstallDir>/mysql/bin/mysql.exe -uroot -p -hlocalhost --port=3306

Standardeinstellungen


Die Einstellung der folgenden Parameter ist zwingend erforderlich. Zudem muss die InnoDB-Engine der MariaDB- oder MySQL-Datenbank installiert sein. Ab MySQL 5.1.38 ist diese bereits integriert.

  1. Passen Sie die folgenden Parameter in der Datei my.ini (Windows) oder in der Datei my.cnf (Linux) Datei im Bereich [mysqld] an. Den Speicherort finden Sie in der entsprechenden MariaDB- bzw. MySQL-Dokumentation.
    max_allowed_packet=2M (oder höher)
    
    lower_case_table_names=1
    transaction-isolation=READ-COMMITTED
    innodb_buffer_pool_size=800M
    bei größeren Datenbanken > 1 TB ist ein Wert von 12G - 20G empfohlen
    

Den RAM nachträglich erhöhen

  1. Passen Sie im Bereich [mysqld] den folgenden Parameter an:
    innodb_buffer_pool_size=800M
    

    Beachten Sie, dass Solr und agorum core selbst noch genügend RAM zur Verfügung steht.

    Unter Parameter der mitgelieferten Datenbank​​​​​​ sehen Sie beispielhaft die mitgelieferten Grundeinstellungen der MariaDB-Datenbank, wenn diese gemeinsam mit agorum core installiert wird.

MariaDB Backup (Dump)


Bei der mitgelieferten Datenbank wird das Skript roi_mysql_backup hier angelegt:

<InstallDir> /agorumcore/scripts

Dieses können Sie zur Sicherung mit einem Datenbank-Dump verwenden. Wird eine vorhandene Datenbank verwendet, wird kein Skript mit ausgeliefert.

Beispielskript zum Datenbank-Dump (Linux)

Hinweis: Das nachfolgende Skript ist ein beispielhafter Vorschlag und muss auf Ihre individuellen Backup-Prozesse angepasst werden. Auch andere Sicherungsmethoden existieren.

In diesem Beispiel wird davon ausgegangen, dass die MySQL-Datenbank über die Paketverwaltung installiert wurde und agorum core im Standard-Pfad installiert ist:

/opt/agorum/agorumcore


Inhalt des Skripts

#!/bin/bash

cd "/opt/agorum/agorumcore/scripts"

#
# stop everything
#
./roi stop
./roi_mysql start

# Create the temporary copy directory
SQL_BACKUP_PATH=/opt/agorum/agorumcore/backup
SQL_BASE_PATH=/opt/agorum/agorumcore/mysql
SQL_PASSWORD=*******
SQL_HOST=localhost

mkdir ${SQL_BACKUP_PATH} 2>/dev/null
mkdir ${SQL_BACKUP_PATH}/tmp 2>/dev/null
chmod -R 700 ${SQL_BACKUP_PATH}/tmp

mkdir /tmp/sql
ln -s ${SQL_BASE_PATH}/data 2>/tmp/sql/data

# get the list of SQL databases and copy them
for var in `find /tmp/sql/data/ -type d | sed -e ''s/\/tmp\{sql\/data\///''`;
do
${SQL_BASE_PATH}/bin/mysqldump -uroot -p${SQL_PASSWORD} -h${SQL_HOST} --socket=/tmp/mysql.arogumcore.sock01 -t -c ''$var'' > ${SQL_BACKUP_PATH}/tmp/${var}_data.dmp
${SQL_BASE_PATH}/bin/mysqldump -uroot -p${SQL_PASSWORD} -h${SQL_HOST} --socket=/tmp/mysql.arogumcore.sock01 -d --opt ''$var'' > ${SQL_BACKUP_PATH}/tmp/${var}_tables.sql

#cleanup
rm -f /tmp/sql/data
rm -Rf /tmp/sql

# Tar/gzip data
date=`date -I`

# use weekday
EXPORTDATE=`date +"%A"`

tar czf ${SQL_BACKUP_PATH}/SqlBackup-${EXPORTDATE}.tar.gz -C ${SQL_BACKUP_PATH}/ tmp/
rm -Rf ${SQL_BACKUP_PATH}/tmp

#
# start everything up
#
./roi_mysql start
./roi start

Um ein Backup zu erstellen, führen Sie dieses Skript aus.

Zusätzliche Informationen


Sie können weitere Informationen aus der Datenbank ziehen. Achten Sie darauf, dass Sie die Datenbank unter keinen Umständen von außen verändern.