CentOS – MariaDB Update

In den Standard-Repositories von CentOS 7 finden wir die Version 5.5. von MariaDB. Oft kommt es vor, dass Anwendungen eine höhere Version von MariaDB erfordern. Dieses Tutorial beschreibt wie wir MariaDB 5.5 auf eine höhere Version updaten.

Vorrausgesetzt wird ein installiertes CentOS 7 mit MariaDB.

Wird MariaDB bereits aktiv genutzt, sollten wir im Vorfeld ein Backup aller Datenbanken anfertigen. Wie das geschieht steht in dem Artikel „Mysql Datenbanken sichern“. Beim Upgrade selbst ist mit keinen Datenverlust zu rechen, eine Garantie dafür gibt es natürlich nicht.

MariaDB Update mit CentOS 7

Die Version der akuell installierten MariaDB Version sehen wir z.B. im Login Prozess den Datenbank-Servers.

#mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.52-MariaDB MariaDB Server

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

MariaDB Repo einbinden

Auf der Webseite von MariaDB können wir uns die Angaben für das passende Repository generieren. Dazu erstellen wir eine neue Konfigurationsdatei für das Repo.  Zum Beispiel für die Version 10.2.

vi /etc/yum.repos.d/mariadb-10.2.repo
# MariaDB 10.2 CentOS repository list - created 2017-07-26 11:13 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Neue MariaDB Version installieren

Anschliessend stoppen wir den aktuellen Datenbankserver.

systemctl stop mariadb.service

Dann folgt ein Update per yum. Dabei werden die Pakete des bereits installierten MariaDB-Servers mit den neuen Paketen aus dem Repo von MariaDB ersetzt.

yum update
Dependencies Resolved

======================================================================================
 Package                  Arch      Version                          Repository  Size
======================================================================================
Installing:
 MariaDB-client           x86_64    10.2.7-1.el7.centos              mariadb     48 M
     replacing  mariadb.x86_64 1:5.5.52-1.el7
 MariaDB-compat           x86_64    10.2.7-1.el7.centos              mariadb    2.8 M
     replacing  mariadb-libs.x86_64 1:5.5.52-1.el7
 MariaDB-server           x86_64    10.2.7-1.el7.centos              mariadb    108 M
     replacing  mariadb-server.x86_64 1:5.5.52-1.el7
Installing for dependencies:
 MariaDB-common           x86_64    10.2.7-1.el7.centos              mariadb    154 k
 boost-program-options    x86_64    1.53.0-26.el7                    base       156 k
 galera                   x86_64    25.3.20-1.rhel7.el7.centos       mariadb    8.0 M
 lsof                     x86_64    4.87-4.el7                       base       331 k

Transaction Summary
======================================================================================
Install  3 Packages (+4 Dependent packages)

Total download size: 168 M
Is this ok [y/d/N]:y

Nachdem die Installation abgeschlossen ist, starten wir wie gewohnt unseren Datenbankserver.

systemctl start mariadb.service

Abschliessend ist es notwendig die systemeigenen Datenbanken in das neue Schema zu überführen. Dazu gibt es das Kommando mysql_upgrade.

mysql_upgrade
...
Upgrading from a version before MariaDB-10.1
Phase 2/7: Installing used storage engines
Checking for tables with unknown storage engine
Phase 3/7: Fixing views
Phase 4/7: Running 'mysql_fix_privilege_tables'
Phase 5/7: Fixing table and database names
Phase 6/7: Checking and upgrading tables
Processing databases
information_schema
performance_schema
...
Phase 7/7: Running 'FLUSH PRIVILEGES'
OK

Nachden diese Schritte erledigt sind können wir uns im MariaDB einloggen und erhalten auch die neue Versionsnummer angezeigt.

# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 9
Server version: 10.2.7-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

Weitere Infos zu MariaDB findet man wie immer auf der Webseite des Projektes.

Ein Kommentar

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.