Zeige Artikel 1 bis 10 von 14
Weiter 4 Ältere Artikel »
Displaying posts with tag: administration (reset)
Ein Geheimnis behalten: MySQL Router „Bootstrapping“ ohne „root“-Account

Über viele Dinge macht man sich auch als erfahrender Berater erst Gedanken, wenn man vor Ihnen steht. Ich habe in den vergangenen Jahren einige InnoDB-Cluster inkl. MySQL-Router in Betrieb genommen. Bisher war dies immer ein interaktiver Prozess, bei dem es kein Problem war, auch Passwörter von privilegierten Usern einfach (an der Konsole) einzugeben. Dass dies auch anders gehen muss, war zumindest theoretisch klar, da ja z. B. der MySQL-Operator für Kubernetes auch in der Lage ist, Router zu „deployen“. Zeit für einen Blick in die Dokumentation. 

Mehr unter: https://blog.ordix.de/mysql-router-bootstrapping-ohne-root-account

Mit kleinen Sachen DBAs eine Freude machen: Validation der MySQL-Konfiguration

Konfigurationsdateien sind ein steter Quell von Fehlern. Gerade bei älteren Systemen (vor Version 8.0), welche noch nicht die Möglichkeit hatten, online persistent Änderungen vorzunehmen (z. B. über „set global persist …“), kam es oft zu kleineren Problemen. Der Parameter wurde aufgrund einer mangelnden Downtime online (aber flüchtig und somit nicht reboot persistent) gesetzt und wurde parallel (!) in die Konfiguration geschrieben, um auch über einen Neustart den Parameter zu erhalten. Hat man sich hierbei in der Konfiguration vertippt, so konnte man beim nächsten geplanten oder ungeplanten (!) Start der DB dann auf Fehlersuche gehen.

Mehr dazu hier: https://blog.ordix.de/validation-der-mysql-konfiguration

Immer schön friedlich. Monitoring des MySQL-Router mit der RESTful API

Über den MySQL-Router haben wir hier bereits an mehreren Stellen berichtet. Er spielt bei MySQL-Hochverfügbarkeits-Lösungen (z. B. dem InnoDB-Cluster) eine zentrale Rolle. Seit der Version MySQL 8.0.17 wurde der Router um eine REST API erweitert. Über diese Schnittstelle lässt sich der Zustand und die ordnungsgemäße Funktionsweise überprüfen. In diesem Beitrag stellen wir ihnen den Funktionsumfang der jetzt aktuellen Version 8.0.29 vor.

Mehr unter: blog.ordix.de

Alles unter Kontrolle! Der MySQL Enterprise Monitor

Monitoring-Lösungen (auch für MySQL) gibt es viele. Das Portfolio umfasst kommerzielle aber auch viele Open Source Lösungen. Unter diesen Produkten gibt es Spezialisten, die sich vollständig auf eine Anwendung konzentrieren und im Gegensatz dazu stehen Generalisten, welche Plugins und / oder Module für nahezu jede denkbare IT-Komponente haben und / oder sich einfach selbstständig (z.B. über Skripting) erweitern lassen. Heute wollen wir uns einmal mit dem MySQL Enterprise Monitor (https://www.mysql.com/products/enterprise/monitor.html) beschäftigen, der von Kunden mit den entsprechenden Support-Leveln (Enterprise oder Cluster GCE) genutzt werden kann.

Mehr unter: blog.ordix.de

Darf es ein bisschen weniger sein? - MySQL „partial revokes“

Berechtigungen auf Datenbanken zu vergeben kann ein mühsamer Job sein. Gerade das Vergeben von restriktiven Rechten à la „Du darfst alle Tabellen lesen, bis auf die Informationen in der Datenbank XYZ" war ein aufwändiges Unterfangen. Für eine solche Aufgabe mussten die SELECT-Rechte für alle Datenbanken definiert werden, die der User lesen können sollte. Die unerwünschte Datenbank wurde einfach mit keinen Rechten bedacht. Natürlich kann man sich solche GRANT-Anweisungen mit SQL dynamisch erstellen, um den Aufwand in Grenzen zu halten. Mit der Version 8.0.16 gibt es hier eine kleine Erleichterung.

Mehr dazu finden Sie hier:

Doppelt gemoppelt: Wie man Cluster “clustered”. MySQL-InnoDB-ClusterSets

Über den MySQL-InnoDB-Cluster und die zugehörigen Komponenten wie die MySQL-Shell und den MySQL-Router haben wir an dieser Stelle bereits mehrfach berichtet (z.B. https://blog.ordix.de/mysql-shell-cluster-your-application-in-40-minutes). Mit der Version 8.0.28 gibt es eine weitere Neuerung bei diesem "Dreigestirn". Die InnoDB-ClusterSets. Damit ist der DBA komfortabel in der Lage eine asynchrone Replikation zwischen zwei InnoDB-Clustern mit wenigen Kommandos aufzubauen.

Mehr dazu gibt es hier.

Groß- und Kleinschreibung für Fortgeschrittene: MySQL und lower_case_table_names

Ab und zu kommt es vor, dass die eine oder andere Applikation ungünstig formulierte Statements an einen MySQL-Server schickt. Dies kann dann zu Performance-Problemen führen, da beispielsweise vom Optimizer ein ungünstiger Ausführungsplan generiert wird. Im besten Fall kann der Entwickler der Software dieses Problem schnell für einen Fix selbst lösen. In vielen Fällen, z.B. bei Kaufsoftware oder bei kompilierten Code, ist dies nicht so einfach möglich.

Mehr dazu unter: https://blog.ordix.de/query-rewriting-mit-mysql

MySQL Multi Master Replikation: Niemand kann zwei Herren dienen (Matthäus 6,24)?

Seit der MySQL-Version 5.7 gibt es eine Neuerung im Umfeld der Replikation: Multi Source Replication. In diesem Blog möchten wir Sie kurz darüber informieren, was die Besonderheiten dieses Replikationssetups sind und wie man dieses einrichtet. In unserem Beispiel soll es zwei Master (Port 3306 und 3307) und ein Replikat (Port 3308) geben. 
Mehr dazu unter: https://blog.ordix.de/mysql-multi-master-replikation-niemand-kann-zwei-herren-dienen-matthaeus-6-24

MySQL InnoDB Cluster: "Schlüsselmomente" beim Import

Dieser Beitrag bezieht sich auf ein Problem eines unserer Kunden, welches beim Import einer Datenbank in ein neues InnoDB Cluster entstanden ist.

Unser Kunde ist dabei, seine bestehende (veraltete) MySQL-5.5-Single-Instanz-Datenbank zu migrieren. Die Zielumgebung soll dabei aus einem Drei-Knoten-InnoDB-Cluster bestehen.

Mehr dazu können Sie unter diesem Link lesen.

ProxySQL: Auch Umwege führen zum Ziel

 Bei einem der letzten Beratungseinsätze in Sachen MySQL haben wir bei einem Kunden einen MySQL-Server analysiert, auf dem mehrere Tausend interne Mandanten in eigenen Schemata betrieben wurden. Das Setup war zum Glück recht einfach und transparent: 1 Mandant = 1 Schema = 1 Account (User).

Das System war über die Zeit stark gewachsen (Anzahl Mandanten und Datenvolumen) und hatte diverse Performanceprobleme (I/O, CPU, Metadaten Locks, ...).
Mehr dazu unter: https://blog.ordix.de/proxysql-auch-umwege-fuehren-zum-ziel

Zeige Artikel 1 bis 10 von 14
Weiter 4 Ältere Artikel »