Dzisiaj wpadłem na ten sam problem, po tym, jak zrobiłem dist-upgrade pakietu próbnego Debian Jessie 8. Po pewnym dochodzeniu dowiedziałem się, że struktura tabel mysql różni się od tego, co mysql-5.5.55 spodziewa się znaleźć. Właśnie porównałem uszkodzoną bazę danych mysql ze świeżo zainstalowaną bazą i utworzyłem mały plik poprawki, który powinien poprawić błąd. Nie jestem pewien, czy to działa w innych warunkach. Uważaj więc, używając łaty i kopii zapasowej/var/lib/mysql i/etc/mysql, zanim zrobisz coś nieprzyjemnego;) Nie ponoszę żadnej odpowiedzialności za jakiekolwiek szkody, które mogą pojawić się w tej łatce. Używaj go na własne ryzyko.
Przede wszystkim MAKE BACKUPS !! i jeszcze więcej BACKUPS !! na przykład możesz dać mysqlsafebackup próbę (Look at https://github.com/VerboteneZone/MySQLSafeBackup), szyfrowanie i kompresowanie rozwiązania kopii zapasowej MySQL, napisanego przeze mnie.
Pobierz następującą poprawkę do swojej skrzynki:
# wget https://download.rent-an.expert/mysql-patch-5.5.55.sql.gz
Upewnij się, że żadna instancja ma aktualnie dostępu do serwera MySQL (Stop usługi takie jak apache2, postfix czy jak zwykle uzyskuje dostęp do serwera MySQL).Jeśli wprowadzono bardziej pewny, że jesteś sam w ciemności, łaty i wymusić uaktualnienie mysql z następującymi poleceniami:
# zcat mysql-patch-5.5.55.sql.gz | mysql -uroot -p mysql
# mysql_upgrade --force -uroot -p
Jeśli coś działało bez żadnego błędu, należy ponownie uruchomić usługę MySQL:
# service mysql stop
# service mysql start
Po tym, spróbuj utworzyć TestUser, aby zobaczyć, czy poprawka została zastosowana poprawnie:
# mysql -uroot -p
CREATE USER „T estuser123 '@' localhost 'IDENTYFIKOWANY PRZEZ' Pass0worZ ';
Powinieneś otrzymać komunikat:
Query OK, 0 rows affected (0.00 sec)
Teraz można bezpiecznie usunąć TestUser znowu z:
DROP USER 'Testuser123' @ 'localhost';
W każdym razie, gdyby coś poszło nie tak, przywracanie kopii zapasowej i spróbuj jeszcze raz;)
nadzieję, że pomoże.
Edytuj pytanie i dołącz zapytanie SQL. –
Poszedłem do zakładki użytkowników phpmyadmin i chciałem dodać tam użytkownika. – Ser1ous1
Drugi błąd oznacza, że wersja tabeli użytkownika nie jest zsynchronizowana z wersją serwera MySQL. To jest coś, co musisz potwierdzić JAK NAJSZYBCIEJ. Mimo że MySQL nie powinien nawet zaczynać się w takich okolicznościach. – Shadow