Der MariaDB/MySQL Database Server --------------------------------- Allgemeines ----------- MariaDB/MySQL ist ein vollwertiges Datenbankmanagementsystem, das sich als Standarddatenbank im Zusammenspiel mit Webanwendungen etabliert hat. In Kombination mit dem Webserver Apache und der Scriptsprache PHP spielt es in den unterschiedlichsten Anwendungsszenarien seine Staerken aus. Nahezu alle Script- und Programmiersprachen unterstuetzen MySQL. Installation ------------ Das Installationsscript erkennt automatisch, ob bereits ein MySQL Server installiert ist. Vorhandene Datenbanken werden so komplett uebernommen. Sollte fuer den MySQL User "root" noch kein Kennwort vergeben sein, so erfragt das Installationsscript die Eingabe eines solchen. Gleichzeitig wird ein Benutzer "backup" in die Datenbank eingetragen. Sollte "root" bereits durch ein Kennwort geschuetzt sein, so wird es an dieser Stelle abgefragt. Der Benutzer "backup" dient zur internen Steuerung der Autobackup Prozesse und ermoeglicht die Menuesteuerung aller Datenbankfunktionen ohne die staendige Passworteingabe. Sollte das automatische Anlegen des Benutzers "backup" bei der Installation scheitern, (z.B. "root"-Passwort vergessen) so kann er im Menuesystem jederzeit mit selbst gewaehltem Kennwort erstellt werden. Dabei muessen dem Benutzer administrative Rechte zugeordnet werden. Allgemeine Konfiguration ------------------------ Die Konfiguration kann ueber den Menuepunkt "Edit Configuration" geaendert werden. Nach Beendigung des Editors wird die Konfiguration automatisch auf Fehler ueberprueft. Werden Fehler festgestellt, so sollten die entsprechenden Eintraege in jedem Fall korrigiert werden. Achtung, die Uebername der Konfiguration startet den MySQL Daemon neu und unterbricht dabei alle laufenden Datenbankzugriffe. START_MARIADB Legt fest, ob der MariaDB/MySQL Server automatisch gestartet wird. Gueltige Werte: yes,no MARIADB_NETWORK Erlaubt das Warten auf eingehende TCP/IP Verbindungen (listen). Aus Sicherheitsgruenden sollte hier nach Moeglichkeit "no" stehen, so das alle Verbindungen zu MySQL nur ueber die internen Unix-Sockets erfolgen. Gueltige Werte: yes,no MARIADB_DATADIR Hier kann ein abweichender Datenbankpfad angegeben werden. Default ist /var/lib/mysql und muss nicht gesetzt werden. Gueltige Werte: leer oder ein Absoluter Pfad Standardeinstellung: MARIADB_DATADIR='' MARIADB_SEND_MAIL_FROM Hier muss die MailAdresse vom Admin eingeben werden, damit die Mails vom Server versendet werden koennen. Wenn das Feld leer bleibt, werden keine Mail versand. Gueltige Werte: leer, E-MailAdresse Standardeinstellung: MARIADB_SEND_MAIL_FROM='' MARIADB_BACKUP_CRON_SCHEDULE Der Eintrag gibt den Startzeitpunkt und die Anzahl der Dateiueberpruefungen des Auto-Backup System an. Die 5 Werte stehe fuer: Minute, Stunde, Tag, Monat, Wochentag. Die Voreinstellung - einmal taeglich 01:15 Uhr - hat sich in der Praxis als brauchbar erwiesen. Beispiel taeglich 01:15 Uhr: 15 1 * * * MARIADB_BACKUP_TARGET Hier wird das Zielverzeichnis fuer die Backupvorgaenge eingetragen. Auch alle vom Auto-Backup System erstellten Dateien werden dort abgelegt. Standardeinstellung: /var/lib/mysql_backup MARIADB_BACKUP_N Definiert die Anzahl der eingetragenen, mit Auto-Backup zu ueberwachenden, Datenbanken. Beispiel: 2 MARIADB_BACKUP_%_NAME Hier kann ein Name oder eine Bezeichnung fuer dieses Backup eingegeben werden. Dieser Name dient nur der Uebersicht und wird nicht weiter ausgewertet. Gueltige Werte: keine Einschraenkung Standardeinstellung: MARIADB_BACKUP_%_NAME='' MARIADB_BACKUP_%_ACTIVE Hier kann ein Dackup deaktiviert werden. Dabei bleiben die Einstellungen fuer eine eventuelle Reaktivierung erhalten, werden aber nicht in die MariaDB-Konfiguration geschrieben. Gueltige Werte: yes,no Standardeinstellung: MARIADB_BACKUP_%_ACTIVE='no' MARIADB_BACKUP_x_FILE Datenbankname der zu ueberwachenden Datenbank. Beispiel: mysql MARIADB_BACKUP_x_MAX Maximale Anzahl der gespeicherten Backups der Datenbank. Beim Ueberschreiten des Wertes wird die jeweils aelteste Backupdatei geloescht. Beispiel: 7 MARIADB_BACKUP_MOUNT Ermoeglicht das ausfuehren eines Kommandos vor dem Starten des Backup- oder Restorevorganges. Das kann z.B. das Mounten eines MO-Disk Datentraegers sein. Beispiel: mount /mo MARIADB_BACKUP_UMOUNT Ermoeglicht das Ausfuehren eines Kommandos nach Abschluss des Cron- Autobackups. So kann z.B. ein Umount Befehl fuer einen MO-Disk Datentraeger ausgefuehrt werden. Beispiel: umount /mo Spezielle Konfiguration ----------------------- Die folgenden Parameter sollten nur bei Bedarf veraendert werden. MARIADB_DEFAULT_COLLATION Hiermit wird der Standardzeichensatz und die Sortierung vorgegeben. Dabei sind in den 3 Gruppen folgende Werte moeglich: latin1 (cp1252 West European) Sortierung - latin1_bin - latin1_danish_ci - latin1_general_ci - latin1_general_cs - latin1_german1_ci (Woerterbuch Sortierung)) - latin1_german2_ci (Telefonbuch Sortierung)) - latin1_spanish_ci - latin1_swedish_ci utf8 (UTF-8 Unicode) Sortierung: - utf8_general_ci - utf8_bin - utf8_unicode_ci latin2 (ISO 8859-2 Central European) Sortierung - latin2_bin - latin2_general_ci - latin2_hungarian_ci Standardeinstellung: latin1_german1_ci MARIADB_CONNECT_PORT Hier wird der Kommunikations-Port des Servers fuer TCP/IP basierte Kommunikation eingetragen. Clientsoftware erwartet hier, von Ausnahmen abgesehen, den Port 3306 des TCP Protokolles. Dieser Wert ist nur relevant wenn MARIADB_NETWORK='yes' gesetzt ist. Standardeinstellung: 3306 MARIADB_BIND_IP_ADDRESS Diese Option wird dann benoetigt, wenn mehrere Netzwerkkarten im Server verwendet werden und nicht von allen ein Zugriff auf den MySQL Server erlaubt sein soll. Die IP-Adresse der fuer die Servernutzung freigegebenen Netzwerkkarte wird dann hier eingetragen. Dieser Wert ist nur relevant wenn MARIADB_NETWORK='yes' gesetzt ist. Beispiel: 127.0.0.1 MARIADB_MEMORY_OPT Hier wird das Serververhalten an den vorhandenen Arbeitsspeicher angepasst. "small" entspricht dabei Computern mit sehr wenig Arbeitsspeicher von unter 64MB "medium" duerfte fuer die meisten Maschinen die richtige Wahl sein "large" verwendet man fuer SQL Server mit 512 MB und mehr. "huge" verwendet man fuer SQL Server mit 1024 MB und mehr Standardeinstellung: medium MARIADB_THREAD_STACK_SIZE Angaben zur Groesse des thread-stack Gueltige Werte: 128k, 256k, ... Standardeinstellung: MARIADB_THREAD_STACK_SIZE='128k' MARIADB_MAX_ALLOWED_PACKET Die Groesse der Kommunikationspakete (in MB) laesst sich mit diesem Wert einstellen. Standardeinstellung: 1 MARIADB_MAX_CONNECTIONS Maximale Anzahl gleichzeitiger Zugriffe auf den MySQL Dienst. Standardeinstellung: 200 MARIADB_ACTIVATE_BINLOG Mit diesem Parameter wird das Binary Logfile eingeschaltet. Dieser Parameter kann ausgeschaltet bleiben, wenn keine Replikationen zwischen mehrern Datenbanken benoetigt werden. Beispiel: no MARIADB_MAX_BINLOG_SIZE Der Parameter erlaubt die Begrenzung der maximalen Groesse des Binaer- Logfiles. Die Angabe erfolgt in Byte. Standardeinstellung: 1024000 Die Menues des MySQL Packages ---------------------------- Das MariDB/MySQL Hauptmenue --------------------------- Das MariDB/MySQL Hauptmenue ist ueber den Menuepunkt "Service administration" im zentralen Setup-Programm zu erreichen. Es ist wie folgt aufgebaut: * View documentation Zeigt die Dokumentation an. * Edit configuration Damit kann die Konfigurationsdatei des MySQL-Packages bearbeitet werden. * Advanced configuration file handling Ermoeglicht eine Versionsverwaltung der MySQL-Konfigurationsdatei * Start MariaDB Hier kann der MariaDB/MySQL Daemon gestartet werden. * Stop MariaDB Hier wird der MariaDB/MySQL Daemon angehalten. Dabei werden alle laufenden Datenbankzugriffe ohne Warnung vom Server getrennt. Deshalb sollte man sich vorher unter dem Menuepunkt "Show status and connects" ueber gerade laufende Zugriffe informieren und eventuelle externe Benutzer warnen. * Show status and connects Zeigt den Status des MariDB/MySQL Daemon und alle aktuellen Zugriffe auf den MySQL Server an. * MySQL Tools Untermenue zu den weiteren Funktionen. Die MariaDB Tools ----------------- Sollte fuer die folgenden Menuepunkte ein Passwort abgefragt werden, so existiert der MySQL Benutzer "backup" nicht oder sein Kennwort ist dem System unbekannt. Das MySQL Toolmenue ist wie folgt aufgebaut: * List MariaDB user MySQL verfuegt ueber eine eigene Datenbank Benutzerverwaltung. Diese wird in der Datenbank mysql im Datenverzeichnis des Servers gespeichert. Dieser Menuepunkt zeigt alle eingetragenen Benutzer und ihre Rechtegruppe an. (lesen, aendern, administrieren) * Add MariaDB user Hiermit werden ein neuer Benutzer seine Zugriffsoptionen und sein Passwort an die Benutzerdatenbank angefuegt. Bei den Benutzerrechten wird lediglich zwischen den 3 Hauptkategorien administrieren, aendern oder nur lesen unterschieden. Der Parameter "host" spezifiziert die Netzwerkuebergreifenden Zugriffsrechte. Das Zeichen "%" ist hierbei ein universeller Platzhalter fuer IP-Adressen und Domaenennamen. Standardwert ist hier "localhost". * Remove MariaDB user Nicht mehr benoetigte Benutzereintraege lassen sich hiermit loeschen. * Change MariaDb user password Hier kann das Passwort aller MySQL Benutzer veraendert werden. * Database backup Ein Dateiauswahldialog listet alle Datenbanken auf. Durch die Auswahl einer Datenbank wird ein Backup unter gleichem Dateinamen mit dem Anhang des Tagesdatum, der aktuellen Stunde und der Dateiendung ".sql.xz" im Verzeichnis MARIADB_BACKUP_TARGET erstellt. Der Backup Vorgang kann im laufenden Betrieb erfolgen. Eine bereits existierende Backup-Datei mit gleichen Namen wird ohne Warnung ueberschrieben. * Database restore Ein Dateiauswahldialog listet alle Backup Dateien ".sql.{g,x}z," des eingetragenen MARIADB_BACKUP_TARGET Verzeichnisses auf. Die Auswahl einer Datei startet den Ruecksicherungs-Vorgang. Die um Datum und Stunde erweiterten Dateinamen werden automatisch in den urspruenglichen Namen zurueckkonvertiert. Nicht mehr existierende Datenbanken werden komplett neu erstellt. * Database check Ueber diesen Menuepunkt wird die ausgewaehlte Datenbankdatei ueberprueft und gegebenenfalls Repariert und Optimiert. Die Auswahl der Datenbank erfolgt menuegestuetzt. * SQL Console Hier wird der Zugriff auf alle Datenbanken ueber ein SQL-Kommandozeilen- Tool ermoeglicht. Die Datenbankdateiauswahl erfolgt menuegestuetzt. Die Eingabe von "\h" zeigt eine Hilfe an. Mit "\q" wird die Console geschlossen. * Logfile view Hier ist er Zugriff auf die MySQLD logfiles moeglich. Auto-Backup ----------- Da MariaDB/MySQL ueber die Moeglichkeit verfuegt, im laufenden Datenbankbetrieb (ohne Anhalten des SQL-Servers) Backups zu erstellen, wurde eine Auto-Backup-Funktion integriert. Ein Cron Job fragt in vorgegebenen Abstaenden das Aenderungsdatum der unter MARIADB_BACKUP_x_FILE eingetragenen zu ueberwachenden SQL Datenbanken ab. Hat sich die Uhrzeit in einer der zur Datenbank gehoerenden Dateien seit dem letzten Backup geaendert, so wird eine Backup Datei erstellt. Der Backup-Dateiname wird um die Datums- und Stundeninformation der letzten Aenderung im Format: -JJJJMMTT-HH erweitert. So kann theoretisch bis zu einmal stuendlich ein Backup erstellt werden. Voreingestellt ist das Backup auf einmal taeglich 01:15 Uhr. Die Anzahl der gespeicherten Backups pro Datenbank kann mit dem Parameter MARIADB_BACKUP_x_MAX begrenzt werden. Beim Ueberschreiten dieses Wertes wird die aelteste Backupdatei geloescht. Beispiel: mysql | |--> mysql-20030603-10.sql.xz |--> mysql-20040410-17.sql.xz |--> mysql-20040411-12.sql.xz Das durchfuehren von Auto-Backup-Operationen, wie Backup erstellen oder loeschen der aeltesten Backup Datei, wird im System-Logfile protokolliert. MARIADB_OLD_PASSWORD Ab MySQL Version 4.1.x wird intern eine veraenderte und zu aelteren Programmen inkompatible Methode der Passwortspeicherung, verwendet. Mit dieser Option nutzt MySQL die bisherige Methode weiter. ACHTUNG: Dieser Parameter steht so nicht mehr zur Verfuegung. Muessen Passwoerter im OLD Style erzeugt werden, laesst sich das temporaer im Menu 'Change MariaDB user password' einschalten. ----------------------------------------------------------------------------