MySQL 未通过 python 连接
MySQL is not connecting through python
MySQL 未连接并显示错误
我通过pip安装mysql.connector包
这是代码
import mysql.connector
connection = mysql.connector.connect(host = "localhost", user = "root",passwd = "268455")
print(connection)
这是我收到的错误
D:\Python>"C:/Users/Abdul Muqeet/AppData/Local/Programs/Python/Python38/python.exe"
"d:/Python/exmaple (mySQL).py"
Traceback (most recent call last):
File "d:/Python/exmaple (mySQL).py", line 2, in <module>
connection = mysql.connector.connect(host = "localhost", user = "root",passwd = "268455")
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\__init__.py", line 179, in connect
return MySQLConnection(*args, **kwargs)
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\connection.py", line 95, in __init__
self.connect(**kwargs)
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\abstracts.py", line 716, in connect
self._open_connection()
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\connection.py", line 208, in _open_connection
self._do_auth(self._user, self._password,
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\connection.py", line 137, in _do_auth
packet = self._protocol.make_auth(
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\protocol.py", line 99, in make_auth
packet += self._auth_response(client_flags, username, password,
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\protocol.py", line 58, in _auth_response
auth = get_auth_plugin(auth_plugin)(
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\authentication.py", line 190, in get_auth_plugin
raise errors.NotSupportedError(
mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_password' is not
supported
我搜索了很多网站,我都用同样的方法做了,但仍然出现错误
您必须包含要与之连接的数据库,并且消息不能像您使用的那样。
一个例子:
def MySQLConnect(usernameStr, passwordStr, hostStr, databaseStr, conPrint = True):
#ESTABLISH THE CONNECTION WITH THE DATABASE
try:
con = mysql.connector.connect(
user = usernameStr,
password = passwordStr,
host = hostStr,
database = databaseStr)
if conPrint: print('Connection established successfully with the database')
return con
except Error:
print(Error)
问题已解决。我安装了 mysql-connector 包,而我需要安装 mysql-connector-python 包。首先卸载 mysql-connector 软件包,然后安装 mysql-connector-python 软件包。
MySQL 未连接并显示错误
我通过pip安装mysql.connector包
这是代码
import mysql.connector
connection = mysql.connector.connect(host = "localhost", user = "root",passwd = "268455")
print(connection)
这是我收到的错误
D:\Python>"C:/Users/Abdul Muqeet/AppData/Local/Programs/Python/Python38/python.exe"
"d:/Python/exmaple (mySQL).py"
Traceback (most recent call last):
File "d:/Python/exmaple (mySQL).py", line 2, in <module>
connection = mysql.connector.connect(host = "localhost", user = "root",passwd = "268455")
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\__init__.py", line 179, in connect
return MySQLConnection(*args, **kwargs)
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\connection.py", line 95, in __init__
self.connect(**kwargs)
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\abstracts.py", line 716, in connect
self._open_connection()
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\connection.py", line 208, in _open_connection
self._do_auth(self._user, self._password,
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\connection.py", line 137, in _do_auth
packet = self._protocol.make_auth(
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\protocol.py", line 99, in make_auth
packet += self._auth_response(client_flags, username, password,
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\protocol.py", line 58, in _auth_response
auth = get_auth_plugin(auth_plugin)(
File "C:\Users\Abdul Muqeet\AppData\Roaming\Python\Python38\site-
packages\mysql\connector\authentication.py", line 190, in get_auth_plugin
raise errors.NotSupportedError(
mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_password' is not
supported
我搜索了很多网站,我都用同样的方法做了,但仍然出现错误
您必须包含要与之连接的数据库,并且消息不能像您使用的那样。
一个例子:
def MySQLConnect(usernameStr, passwordStr, hostStr, databaseStr, conPrint = True):
#ESTABLISH THE CONNECTION WITH THE DATABASE
try:
con = mysql.connector.connect(
user = usernameStr,
password = passwordStr,
host = hostStr,
database = databaseStr)
if conPrint: print('Connection established successfully with the database')
return con
except Error:
print(Error)
问题已解决。我安装了 mysql-connector 包,而我需要安装 mysql-connector-python 包。首先卸载 mysql-connector 软件包,然后安装 mysql-connector-python 软件包。