Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie repariert man eine beschädigte xampp 'mysql.user'-Tabelle?

Dies ist mit ziemlicher Sicherheit ein bekannter Fehler in mariaDB (dh mySQL ). Siehe ApacheFriends.org für die Beschreibung. Das Problem tritt nach dem Passwort des Benutzers auf Änderungen - häufig Benutzer root .

Allgemeiner Rat scheint zu sein, Ihre Verluste zu reduzieren und Ihr XAMPP auf 7.3.5 herunterzustufen

Andernfalls kann das Problem später sogar nach erneut auftreten B. eine vollständige Deinstallation/Neuinstallation von 7.3.7.

Was folgt, ist eine Umgehung / Reparatur für Windows/XAMPP-Benutzer. Es wird davon ausgegangen, dass Sie ein Backup haben - was Sie wahrscheinlich tun. (Es sieht so aus, als würde der Installationsprozess ein anfängliches Backup bereitstellen.) Die Idee ist, Sie wieder auf Sendung zu bringen, ohne lange genug herunterzustufen, bis die nächste Version eintrifft.

Der schnellste Weg aus dem Sumpf ist einfach zu Schritt 9 zu gehen.

(1) Suchen Sie „my.ini“ (z. B. c:\xampp\mysql\bin\my.ini )
(2) Fügen Sie „skip-grant-tables“ in eine neue Zeile nach dem Label „[mysqld]“ ein '. Entfernen Sie dies später.
(3) Jetzt kann mySQL aus dem XAMPP Control Panel gestartet werden.
(4) Starten Sie phpMyAdmin im Browser und wählen Sie die Tabelle ‚user‘ aus der Datenbank ‚mysql‘ aus.
(5) Sollte sehen:#1034 Index für Tabelle 'Benutzer' ist beschädigt; Versuchen Sie, es zu reparieren.
(6) Wählen Sie „mysql“ im linken Bereich und aktivieren Sie dann „Benutzer“ im rechten Bereich.
(7) Führen Sie im Dropdown-Menü „Mit ausgewählten“ „Analysieren“ und dann „Reparieren“ aus table'.
(8) Wenn 'Repair' fehlschlägt, bleibt keine andere Wahl als 'DROP TABLE user' ....

(9) Erstellen Sie die „Benutzer“-Tabelle aus der Distributionssicherung neu, indem Sie die folgenden 3 Dateien kopieren.

C:\xampp\mysql\backup\mysql\user.frm 
C:\xampp\mysql\backup\mysql\user.MYD
C:\xampp\mysql\backup\mysql\user.MYI

zu

C:\xampp\mysql\data\mysql\

Starten Sie dann XAMPP neu und fügen Sie Benutzer hinzu/entfernen/bearbeiten Sie sie nach Belieben.

Ein letzter Punkt:Es scheint eine Art Verbindung zwischen den 'user'- und 'db'-Tabellen zu geben. Möglicherweise müssen Sie die 'db'-Tabelle gemäß Schritt (7) reparieren.