Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Dieser Artikel enthält wichtige Informationen zum Umstieg auf das in Vorbereitung befindliche mariadb104das neue mariadb110-Paket.

Vorbemerkungen

Unter eisfair ist es möglich, verschiedene Versionslinien der Datenbanksysteme mysql und mariadb parallel zu installieren und zu betreiben. Derzeit sind dies folgende eisfair-Pakete:

  • mysql4122: MySQL 4.1.22 (EOL)
  • mysql5173: MySQL 5.1.73 (EOL)
  • mariadb55: MariaDB: 5.5.x (EOL)
  • mariadb100: MariaDB 10.0.x (EOL)
  • mariadb102: MariaDB 10.2.x (EOL)
  • mariadb103: MariaDB 10.3.x
  • mariadb104mariadb100: MariaDB 1011.40.x (in Planung)

Upgrades werden nur innerhalb einer Versionslinie vorgenommen, so dass eine Umstieg auf eine andere Versionslinie manuell vorzunehmen ist, was hier im folgenden an einem Beispiel beschrieben werden soll.

...

DatenbankKonfigurationsdateiSocket

Datenbankverzeichnis

(konfigurierbar)

Datenbankbackupverzeichnis

(konfigurierbar)

mysql4122/etc/mysql/my4122.cnf

/run/mysql/4122/mysql.sock

/srv/mysql/4122/srv/mysql_backup/4122
mysql5173/etc/mysql/my5173.cnf/run/mysql/5173/mysql.sock/srv/mysql/5173/srv/mysql_backup/5173
mariadb55/etc/mysql/my55.cnf/run/mysql/55/mysql.sock/srv/mysql/55/srv/mysql_backup/55
mariadb100/etc/mysql/my100.cnf/run/mysql/100/mysql.sock/srv/mysql/100/srv/mysql_backup/100
mariadb102/etc/mysql/my102.cnf/run/mysql/102/mysql.sock/srv/mysql/102/srv/mysql_backup/102
mariadb103/etc/mysql/my103.cnf/run/mysql/103/mysql.sock/srv/mysql/103

/srv/mysql_backup/103mariadb104

mariadb110

(in Planung)

/etc/mysql/my104my110.cnf/run/mysql/104110/mysql.sock/srv/mysql/104110/srv/mysql_backup/103110

Die Links /etc/my.cnf und /run/mysql/mysql.sock zeigen jeweils auf die Standard-Datenbankversion, also diejenige, auf die ohne zusätzliche Parameter mit Datenbankprogrammen zugegriffen werden kann, z. B.:

...

Datenbankbackups erstellen und Datenbanksystem mariadb102 stoppen

Über den Menüpunkt "Administration of services|Database server administration|MariaDB 10.2 server administration|MariaDB Tools|Backup database" sind für alle vorhandenen Datenbanken, also auch der systeminternen Datenbank mysql, ein aktuelles Backup zu erstellen.

...

Code Block
languagebash
# /etcusr/init.dsbin/mariadb102service stop mariadb102

Kopieren/Importieren der Datenbankbackups in das neue Datenbanksystem

...

Warning

Backups der systeminternen Datenbank mysql bis einschließlich mariadb103 sind mit mariadb104 und höher nicht kompatibel und müssen vor dem Import mit einem Editor nachbearbeitet werden. Ist auf dem eisfair-Server das mc- und xz-Paket installiert, kann das Backup mit dem integrierten Editor (F4) bearbeitet werden. Wie im folgenden Beispiel eines Backups der mysql-Datenbank aus mariadb102 sind vor dem ersten DROP die beiden roten Zeilen zu ergänzen und danach abzuspeichern (F2):


-- MySQL dump 10.16 Distrib 10.2.24-MariaDB, for Linux (i686)
--
-- Host: localhost Database: mysql
-- ------------------------------------------------------
-- Server version 10.2.24-MariaDB


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;


DROP TABLE IF EXISTS `global_priv`;

DROP VIEW IF EXISTS `user`;


--
-- Table structure for table `column_stats``..........`
--

DROP TABLE IF EXISTS `column_stats``..........`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;

Über den Menüpunkt Im Menü "Administration of services|Database server administration|MariaDB 10.3 server administration|MariaDB Tools|Restore database " importieren wir nun über "Restore database" die eben erstellten Datenbankbackups in die neue Datenbankversion und führen nun noch ein Skript zur Durchführung von notwendigen Anpassungen der Datenbanken an die neue mariadb/mysql-Version aus:

...

languagebash

...

anschließend noch den Punkt "Initial database update" aus, welches die Migration der mysql-Datenbank auf MariaDB 10.3 durchführt. Hierbei können durchaus etliche "Errors" auftauchen - bei einer erneuten Ausführung des Menüpunktes sollten keine Fehlermeldungen mehr erscheinen.

mariadb103 als neues Standard-Datenbanksystem setzen

Um mariadb103 als neues Standard-datenbanksystem Datenbanksystem zu setzen, muss dieses noch auf den Port 3306 umgesetzt werden, nachdem vorher mariadb102 auf einen anderen freien Port umgestellt wurde:

...