Попробуйте использовать telnet, чтобы открыть соединение с портом, на котором работает ваша база данных.Например,
phill@kore:~$ telnet localhost 3306
Trying ::1...
Connected to localhost.localdomain.
Escape character is '^]'.
J
5.7.22q8TpMY /fT[zVmysql_native_password Connection closed by foreign host.
phill@kore:~$
В этом случае служба mysql ожидает использовать mysql_native_password
Возможно, этот вопрос может помочь:
Плагин аутентификации 'caching_sha2_password' не поддерживается
Вы используете mysql_native_password, который больше не используется по умолчанию.Предполагая, что вы используете правильный соединитель для своей версии, вам нужно указать аргумент auth_plugin при создании экземпляра вашего объекта подключения
cnx = mysql.connector.connect(user='lcherukuri', password='password',
host='127.0.0.1', database='test',
auth_plugin='mysql_native_password')
Также предлагается попробовать что-то вроде этого:
mysql> select Host,User,plugin from mysql.user;
+-----------+---------------+-----------------------+
| Host | User | plugin |
+-----------+---------------+-----------------------+
| localhost | root | mysql_native_password |
| localhost | mysql.session | mysql_native_password |
| localhost | mysql.sys | mysql_native_password |