Einige Releases von MySQL enthalten Änderungen an der Struktur der Systemtabellen in der mysql-Datenbank, damit neue Berechtigungen oder Funktionen hinzugefügt werden können. Wenn Sie ein Update auf eine neue Version von MySQL durchführen, sollten Sie auch Ihre Systemtabellen aktualisieren, um sicherzustellen, dass ihre Struktur auf dem neuesten Stand ist. Andernfalls können Sie bestimmte Funktionen unter Umständen nicht nutzen. Erstellen Sie zunächst eine Sicherung der mysql-Datenbank und gehen Sie dann wie nachfolgend beschrieben vor.
Unter Unix und verwandten Systemen aktualisieren Sie die Systemtabellen, indem Sie das Skript mysql_fix_privilege_tables ausführen:
shell> mysql_fix_privilege_tables
Sie müssen dieses Skript zur Laufzeit des Servers ausführen. Es versucht dann, eine Verbindung zu dem Server herzustellen, der auf dem lokalen Host als root ausgeführt wird. Wenn Ihr root-Konto ein Passwort erfordert, geben Sie dieses wie folgt auf der Befehlszeile an:
shell> mysql_fix_privilege_tables --password=root_password
Das Skript mysql_fix_privilege_tables führt alle Vorgänge aus, die notwendig sind, um Ihre Systemtabellen in das aktuelle Format zu konvertieren. Unter Umständen wird mehrmals die Warnung Duplicate column name angezeigt, die Sie aber getrost ignorieren können.
Nach der Ausführung des Skripts beenden Sie den Server und starten ihn neu.
Auf Windows-Systemen enthalten MySQL-Distributionen ein SQL-Skript namens mysql_fix_privilege_tables.sql, das Sie mithilfe des Clients mysql ausführen können. Wenn Ihre MySQL-Installation sich beispielsweise im Verzeichnis C:\Programme\MySQL\MySQL Server 5.1 befindet, sieht der Befehl wie folgt aus:
C:\>cd "C:\Program Files\MySQL\MySQL Server 5.1"C:\>bin\mysql -u root -p mysqlmysql>SOURCE scripts/mysql_fix_privilege_tables.sql
Der Befehl mysql fordert Sie dann auf, das root-Passwort einzugeben. Folgen Sie dieser Aufforderung.
Wenn Ihre Installation sich in einem anderen Verzeichnis befindet, geben Sie die entsprechenden Pfadnamen ein.
Wie bei der Vorgehensweise unter Unix können auch hier Warnungen vom Typ Duplicate column name angezeigt werden, während mysql die Anweisungen im Skript mysql_fix_privilege_tables.sql verarbeitet, und auch hier können Sie diese ignorieren.
Nach der Ausführung des Skripts beenden Sie den Server und starten ihn neu.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.
