«Ошибка выделенного доступа» при попытке подключения Python к mySQL базе данных - PullRequest
0 голосов
/ 02 августа 2020

Я пытался подключить python к mysql базе данных, но выдает Access denied for user 'root'@'localhost'. Я использую linux os .

Вот мой код:

import mysql.connector as sa
db = sa.connect(host="localhost",user="root",password="sandy123",database="school")
print(db)

И это ошибка.

Отслеживание (последний вызов последним): файл "/home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/connection_cext.py", строка 216, в _open_connection self ._ c mysql .connect (** cnx_kwargs) _mysql_connector.MySQLInterfaceError: доступ запрещен для пользователя 'root' @ 'localhost'

Во время обработки вышеуказанного исключения произошло другое исключение:

Отслеживание (последний вызов последним): файл "swip.py", строка 2, в db = fuck.connect (host = "localhost", user = "root", пароль = "sandy123") Файл "/ home / sandytom / .local / lib / python3 .6 / site-packages / mysql / connector / init .py ", строка 264, при подключении возвращает файл CMySQLConnection (* args, ** kwargs)" / home / sandytom / .local / lib / python3 .6 / site-packages / mysql / connector / connection_cext.py ", строка 80, в файле init self.connect (** kwargs)" / домой / sandytom / .local / lib / python3 .6 / сайты-пакеты / mysql / коннектор / абс tracts.py ", строка 966, в файле connect self._open_connection ()" /home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/connection_cext.py ", строка 219, в _open_connection sqlstate = ex c .sqlstate) mysql .connector.errors.ProgrammingError: 1698 (28000): доступ запрещен для пользователя 'root' @ 'localhost' sandytom@sandytom-Lenovo-ideapad-320-15ISK: ~ / Desktop / ruber $ python3 swip.py Traceback (последний вызов последним): файл "/home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/connection_cext.py", строка 216, в _open_connection self. _ cmysql .connect (** cnx_kwargs) _mysql_connector.MySQLInterfaceError: доступ запрещен для пользователя 'root' @ 'localhost'

Во время обработки вышеуказанного исключения произошло другое исключение:

Traceback (последний вызов последним): файл «swip.py», строка 2, в db = fuck.connect (host = «localhost», user = «root», password = «sandy123», база данных = "школа") Файл "/home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/init.py", строка 264, в соединении вернуть CMySQLConne ction (* args, ** kwargs) Файл "/home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/connection_cext.py", строка 80, в init self.connect (** kwargs) Файл "/home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/abstracts.py", строка 966, в соединении self._open_connection () Файл "/home/sandytom/.local/lib/python3.6/site-packages/mysql/connector/connection_cext.py", строка 219, в _open_connection sqlstate = ex c .sqlstate) mysql .connector .errors.ProgrammingError: 1698 (28000): доступ запрещен для пользователя 'root' @ 'localhost'

1 Ответ

0 голосов
/ 02 августа 2020

Это тот случай, когда внимательное чтение сообщения об ошибке поможет. Вот важная часть сообщения:

Доступ запрещен для пользователя 'root' @ 'localhost'

Похоже, комбинация имени пользователя и пароля, которую вы указали MySQL недействителен. root, вероятно, правильный, поэтому вам следует проверить свой пароль.

Хороший способ сделать это - попытаться войти в систему с помощью клиентской программы MySQL, такой как клиентская программа mysql или, возможно, Хайди SQL. Таким образом вы можете убедиться, что у вас правильный пароль, прежде чем запускать программу python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...