В эту статью буду постепенно добавлять те ошибки, с которыми я сталкивался при работе с базами данных веб-сайтов. Приветствую Ваши комментарии и решения тех ошибок, с которыми столкнулись Вы.
Не удалось импортировать резервную копию: ERROR 1273 (HY000) at line 3857: Unknown collation: ‘utf8mb4_unicode_520_ci’
Для решения проблемы нотепадом нужно переименовать в заголовке базы ‘utf8mb4_unicode_ci’ на «utf8_general_ci» или «utf8mb4» на «utf8».
Ошибка ERROR 1054 (42S22): Unknown column ‘Password’ in ‘filed list’»
Сбрасываем пароль пользователя root в базе. Делаем запрос в phpmyadmin: UPDATE `mysql`.`user` SET `Password` = PASSWORD(‘новый пароль’) WHERE `user`.`Host` = ‘localhost’ AND `user`.`User` = ‘root’
Применяем изменения mysql> flush privileges; и перезапускаем mysql сервер.
Table ‘performance_schema.session_status’ doesn’t exist и ошибка «Cannot load from mysql.proc. The table is probably corrupted»
Запускаем утилиту mysql> mysql_upgrade -u root -p —force для автоматической проверки и обновления MySQL-таблиц на предмет совместимости структур данных с текущей версией MySQL.
Performance_schema’.’session_status’ has the wrong structure
При обновлении MySQL возникает данная ошибка, запускаем без проверки привилегий:
mysql>mysqld —skip-grant-tables для того, чтобы править системные таблицы.
Применяем изменения mysql> flush privileges; и перезапускаем сервер.
Checking for corrupt, not cleanly closed and upgrade needing tables
Принудительно проверяем и исправляем таблицы:
mysql> mysqlcheck —check-upgrade —all-databases —auto-repair -u root -p и mysql> mysql_upgrade —force -u root -p
«Checking for tables which need an upgrade, are corrupt or were not closed cleanly» или «Mysqlcheck doesn’t support multiple contradicting commands»
Выполнить команду mysql> mysqlcheck -u логин -p пароль —auto-repair —check —optimize —all-databases
Plugin unix_socket is not loaded
Открываем my.cnf found in /etc/mysql/ для редактирования и правим в месте [mysqld] header.
plugin-load-add = auth_socket.so
Перезагружаем сервер sudo systemctl restart mysql.service Теперь можно получить доступ к базе по команде sudo mysql -u root