Tools zur Administration von Mysql
Überblick
Sehr viele Einstellungen und Berechtigungen legt MySQL in einer eigenen Datenbank
(mysql) in Tabellen ab. So das diese mittels den bekannten SQL Befehlen geändert
werden können. Weiterhin bietet MySQL einige Hilfsprogramme zur Administration,
von denen eine Auswahl vorgestellt werden soll.
Kommandozeilen Tools [mod. Auszug aus der Doku]:
myisamchk
Dienstprogramm zur Beschreibung, Prüfung, Optimierung und Reparatur von
MySQL-Tabellen.
| msql2mysql
Ein Shell-Skript, das mSQL -Programme zu MySQL konvertiert. Es deckt
nicht alle Fälle ab, ist aber hilfreich, um mit dem Konvertieren
anzufangen.
| mysqlaccess
Ein Skript, das die Zugriffsberechtigungen für eine Host-, Benutzer- und
Datenbank-Kombination prüft.
| mysqladmin
Dienstprogramm für die Durchführung von Verwaltungsoperationen wie Erzeugen
und Löschen von Datenbanken, Neuladen der Berechtigungstabellen,
Zurückschreiben von Tabellen auf Platte und Neuöffnen von Log-Dateien.
mysqladmin kann auch benutzt werden, um Versionsnummer sowie Status-
und Prozess-Informationen vom Server zu erhalten.
| mysqlbug
Das MySQL-Bug-Bericht-Skript. Dieses Skript sollte immer benutzt werden,
wenn Sie einen Bug-Bericht an die MySQL-Liste ausfüllen.
| mysqld
Der SQL-Daemon. Dieser sollte immer laufen.
| mysqldump
Dumpt eine MySQL-Datenbank in eine Datei als SQL-Statements oder als
Tabulator-separierte Textdateien. Verbesserte Freeware, ursprünglich von
Igor Romanenko.
| mysqlimport
Importiert Textdateien in die jeweiligen Tabellen mittels LOAD DATA
INFILE .
| mysqlshow
Zeigt Informationen über Datenbanken, Tabellen, Spalten und Indexe an.
| mysql_install_db
Erzeugt die MySQL-Berechtigungstabellen mit vorgabemäßigen Berechtigungen.
Dieses Skript wird gewöhnlich nur einmal ausgeführt, wenn Sie MySQL das
erste Mal auf einem System installieren.
| replace
Ein Dienstprogramm, das von msql2mysql benutzt wird, aber auch
darüber hinaus benutzt werden kann. replace ändert Zeichenketten in
Dateien oder auf der Standardeingabe.
|
Einzelne ausgewählte UTIL's
Datenbanken Administration (Neuanlegen/Löschen Serverrestarten
etc..)
- mysqladmin [unter WIN mysqladmin.exe]
Mit diesem Tool lassen sich einige Administrative Aufgaben am MySQL Server erledigen.
Ob der User dazu berechtigt ist die Administrativen Aufgaben durchzuführen
findet sich in der mysql.user Tabelle
Im einzelnen:
Aufruf mysqladmin
mysqladmin |
Beschreibung |
SQL-Anweisung |
create Datenbankname |
Anlegen einer DB |
CREATE DATABASE Datenbankname |
drop Datenbankname |
Löschen einer DB mit allen Inhalten |
DROP DATABASE Datenbankname |
extended-status |
Serverstatus |
SHOW STATUS |
flush-host |
Host Cache leerem |
FLUSH HOST |
flush-privileges |
Berechtigungen Flashen & Benutzertabelle neu laden |
FLUSH PRIVILEGES |
flush-status |
Statusvariablen leeren |
FLUSH STATUS |
flush-tables |
Tabellen-Cache leeren |
FLUSH TABLES |
kill id,… |
Beendet einen spezifizierten Server-Thread |
KILL |
password new password |
Ändert das Passwort (des aktuellen Benutzers) |
SET PASSWORD |
ping |
Prüft, ob der Server läuft |
|
processlist |
Zeigt eine Liste, aller z.Z. aktiven Threads an |
SHOW PROCESSLIST |
refresh |
Leert den Tabellen Cache und öffnet die Log-Dateien neu |
|
reload |
Lädt alle Berechtigungstabellen neu ein |
FLUSH PRIVILEGES |
shutdown |
Fährt den Server runter |
|
status |
Zeigt eine Statusmeldung vom Server an |
|
variables |
Zeigt Namen und Werte der Systemvariablen an |
SHOW VARIABLES |
version |
Zeigt die Versioninformationen des Servers an |
|
Alternativ zu mysqladmin, Anlegen einer DB per SQL
Datenbank anlegen
wie bereits bekannt:
- CREATE DATABASE name
- DROP DATABASE name
Datenbanken Export/Import
- mysqldump [unter WIN mysqldump.exe]
- mysqlimport [unter WIN mysqlimport.exe]
Datenbank Inhalte und Strukturen können mit Hilfe eines Tools einfach gesichert werden. Ebenso können gesicherte Strukturen oder Inhalte per Tool wieder zurückgespielt werden.
Zum Sichern:
mysqldump [OPTIONS] database [tables]
die komplette Befehlsreferenz bekommen Sie mit
mysqldump --help
Mysqldump erzeugt ein Textausgabe in Form von SQL Querys, diese Ausgabe auf Standart Out kann dann problemlos z.B. in eine Datei umgeleitet werden.
mysqldump --all-databases > all_datab.sql
z.B.: Ein komplettes Backup eines MySQL Servers
mysqldump --tab=/path/to/some/dir --opt --full
Das Gegenstück dazu ist myqslimport, mit diesem Tool können sie SQL Statements einlesen. Somit auch ein Backup "zurückfahren".
mysqlimport [optionen] datenbank textdatei1 [textdatei2....]
Eine Übersicht über alle Parameter gibt es auch hier mit
mysqlimport --help
Dazu gibt es wieder die SQL Anweisung die Teilweise die gleiche Funktionalität hat:
LOAD DATA INFILE 'datei.txt' [REPLACE | IGNORE] INTO TABLE tabelle
Beachtet werden muss das es sich dabei um reine Daten lese Prozedur handelt (z.B. csv File)!
Datenbanken Rettung (Reparieren, Optimieren, Prüfen..)
Sind nach einem Systemabsturz oder nach größeren Veränderungen, Fehler in der Datenbank festzustellen, können diee mittels des Tools myisamchk überprüft und gegebenenfalls repariert werden, allerdings nur wenn der Tabellentyp MISAM ist!
Weiterhin kann mit hilfe des Tools auch eine Tabelle optimiert werden (Analyse / Sort von Indexbäumen).
- myisamchk [unter WIN myisamchk.exe] für Tabellenwartung und Absturzreparatur
myisamchk [optionen] tabelle
Wie gehabt eine Übersicht über alle Parameter gibt es auch hier mit
myisamchk --help
Die Wichtigsten Aufrufsoptionen |
Schnelle Fehlerprüfung | myisamchk tabelle |
Ausführliche Fehlerprüfung | myisamchk -m tabelle |
Gründliche Fehlerprüfung | myisamchk -e tabelle |
Reperatur: | myisamchk -r tabelle |
Analyse: | myisamchk -a tabelle |
Auch hierzu gibt es wieder die SQL Alternativen:
CHECK TABLE tabelle QUICK | FAST | MEDIUM | EXTENDED | CHANGED. REPAIR TABLE tabelle [QUICK] [EXTENDED]
myisamchk kann etrwas mehr und ist in manchen Fällen den SQL Befehlen überlegen.
Detaillierte Informationen wie immer in der MySQl Dokumentation : MySQL_Database_Administration
|