MariaDB Galera Cluster: Node für Synchronisation auswählen

Beim Hochfahren eines MariaDB-Galera-Cluster-Nodes muss dieser erst einmal synchronisiert werden. Standardmäßig sucht sich der Node einen anderen bereits synchronisierten Node des Clusters aus, von dem er anschließend synchronisiert. Bei der Synchronisation ist der Datenlieferant für die Zeit der Synchronisation komplett gesperrt und kann von Clients nicht verwendet werden. Um das zu verhindern kann ein eigener Node aufgesetzt werden, auf den keine Clientprogramme zugreifen. Dieser Node wird dann als bevorzugte Quelle für die Synchronisation bei allen anderen Nodes eingestellt.

[Mehr]
MariaDB  OSS 

Paramiko Stolpersteine

Heute bin ich gleich zwei Mal über das Python-Modul Paramiko gestolpert. In der MySQL-Workbench wird es verwendet, um eine Verbindung über einen SSH-Tunnel herzustellen. Das in der aktuellen MySQL-Workbench ausgelieferte, aber uralte Paramiko versteht sich nicht mehr mit aktuellen OpenSSH-Versionen. Nach einem manuellen Update von Paramiko funktionierte der Verbindungsaufbau dann wieder.

Die zweite Portion Paramiko gab es beim Durchsehen der Backups. Das von mir verwendete Duplicity benutzt ebenfalls Paramiko, wenn Backups auf einem per SSH bzw. SFTP oder SCP erreichbaren Server abgelegt werden sollen. Leider funktioniert SFTP und SCP in Duplicity, und damit implizit Paramiko, aktuell nicht mit einem Backup-Server bei Hetzner. Eine Lösung habe ich bisher leider nicht gefunden.

[Mehr]
MariaDB  MySQL  SSH 

HHVM und Piwik

Mit der heute veröffentlichten Version 2.14.0 der freien Analysesoftware Piwik ist nun auch ein reibungsloser Einsatz unter HHVM möglich. Das Problem der exorbitant steigenden Anzahl von gleichzeitigen Verbindungen zur Datenbank bei Verwendung der Piwik-Seiten wurde gelöst.

HHVM-Stolpersteine – Heute: MySQL-Socket

Nach einem aktuellen Update konnte HHVM auf einmal keine Verbindung mehr zu MySQL bzw. MariaDB aufnehmen. Grund ist der, dass der MySQL-Socket nun wohl unter /tmp/mysql.sock gesucht wird, wo er nicht liegt. Unter Debian liegt er vielmehr unter /var/run/mysqld/mysqld.sock. In der /etc/hhvm/server.ini ist daher folgende Einstellung einzutragen:

hhvm.mysql.socket = /var/run/mysqld/mysqld.sock

Nach einem Neustart von HHVM funktionierts dann auch wieder mit HHVM und MySQL über den Socket.

HHVM  Linux  MariaDB  MySQL  OSS 

MariaDB: Headers and client library minor version mismatch

Beim Einsatz von MariaDB kann es vorkommen, dass PHP5 beim Verbinden mit der Datenbank folgenden Fehler meldet:

mysqli::mysqli(): Headers and client library minor version mismatch.

Die PHP5-Bibliothek, welche für die Anbindung an MariaDB/MySQL zuständig ist, prüft, ob die MariaDB/MySQL-Bibliothek noch die gleiche ist, mit der sie übersetzt wurde. Das ist natürlich nicht mehr der Fall, wenn man die MariaDB/MySQL-Bibliothek auf eine neue Version aktualisiert.

Abhilfe schafft, den mysqlnd-Treiber zu verwenden, was auch das empfohlene Verfahren von MariaDB ist. Dazu muss unter Debian oder Ubuntu das Paket php5-mysqlnd installiert und php5-mysql entfernt werden.

[Mehr]
Linux  MariaDB  MySQL  OSS  PHP