Сегодня я работаю над заданием по тестированию программного обеспечения, и мне нужно использовать Tomcat для всего старинного проекта.
Потому что все используемое очень старое
Вероятно, потому, что старая версия сервера MySQL использует mysql_native_password, но
caching_sha2_password
Это основная причина возникновения ошибки
Найдите файл my.ini,Найдите раздел mysqld,(Если нет, просто добавьте это предложение)Воляauth_native_password
установлен на1
,Новые версии клиентов по-прежнему могут подключаться к серверу MySQL.,потому что новая версия клиента поддерживает несколько плагинов аутентификации,включатьmysql_native_password
。
Когда клиент пытается подключиться к серверу,Клиент и сервер договариваются, какой плагин аутентификации использовать.。Если клиент поддерживаетmysql_native_password
,тогда, даже если сервер настроен на использованиеcaching_sha2_password
,Клиенты также могут вернуться к использованиюmysql_native_password
Аутентификация。
Потому что после новой версии этот файл конфигурации оказался в загадочном месте
Итак, нам нужно войти в клиент MySQL
Введите переменные показа, например «datadir»;
Нашел этот файл, рядом с ним находится my.ini
sudo systemctl restart mysql
Очень хорошо, тогда перейдем к следующему шагу
Пожалуйста, запишите следующее руководство, поскольку в будущем вы сможете повторять его бесчисленное количество раз, если будете часто работать с базами данных.
Сначала перейдите к файлу данных и создайте резервную копию всех содержащихся в нем данных.
Затем откройте cmd с правами администратора.
перейдите в каталог bin вашего установленного MySQL.
Операция заключается в следующем
C:\Windows\System32>cd C:\Program Files\MySQL\MySQL Server 8.1\bin
C:\Program Files\MySQL\MySQL Server 8.1\bin>mysqld -remove MySQL
Service successfully removed.
C:\Program Files\MySQL\MySQL Server 8.1\bin>mysqld --initialize-insecure
C:\Program Files\MySQL\MySQL Server 8.1\bin>mysqld -install
Service successfully installed.
C:\Program Files\MySQL\MySQL Server 8.1\bin>net start mysql
MySQL Служба запускается .
MySQL Служба успешно запущена.
C:\Program Files\MySQL\MySQL Server 8.1\bin>
Кстати Если данные пропали, то скопируйте их сами в резервную копию. Если они еще есть, то бог с вами.