PYMYSQL 错误 2021(1045,“用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)”)
Posted
技术标签:
【中文标题】PYMYSQL 错误 2021(1045,“用户 \'root\'@\'localhost\' 的访问被拒绝(使用密码:YES)”)【英文标题】:PYMYSQL ERROR 2021(1045, "Access denied for user 'root'@'localhost' (using password: YES)")PYMYSQL 错误 2021(1045,“用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)”) 【发布时间】:2021-08-19 19:37:33 【问题描述】:我的系统:
Windows 10 专业版,版本 1909(内部版本 18363.836) Anaconda 版本:conda 4.10.1 Python 3.8.5(python 在 conda env 中)和 Python 3.9 Jupyter 实验室 VS 代码嗨!我希望你们有一个美好的一天。
我刚刚在我的 PC 上安装了 mysql 服务器和 mysql workbench,当我尝试通过“sqlalchemy”将我的 python 文件连接到 mysql 数据库(我使用 mysql workbench 作为应用程序)时遇到了一些困难。我尝试过使用 VS code 和 Jupyter Lab,它们都产生相同的结果,没有。
这是我使用的代码:
import sqlalchemy as db
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
engine1 = db.create_engine('mysql+pymysql://root:12345@localhost:3306/sql_store')
con1 = engine1.connect()
meta = db.MetaData()
pd.read_sql('SELECT * FROM customers', con1, index_col='customer_id')
顺便说一句,我已经在我的“笔记本电脑”上(不是在我的“PC”上)尝试过这段代码,它运行良好。我是这个领域的新手,所以任何建议都会很棒,因为我已经处理这个问题好几天了。
我得到的错误是:
OperationalError: (pymysql.err.OperationalError) (1045, "Access denied for user 'root'@'localhost' (using password: YES)")
(Background on this error at: http://sqlalche.me/e/13/e3q8)
非常感谢您的宝贵时间!
【问题讨论】:
//user@password@localhost:3306
表示“这台机器上的 MySQL 服务器”。您的“PC”而不是“笔记本电脑”上的 MySQL 数据库似乎有不同的 root 密码。
【参考方案1】:
一个可能的原因是您的数据库密码中存在特殊字符。如果是你的情况,check this out。
【讨论】:
以上是关于PYMYSQL 错误 2021(1045,“用户 'root'@'localhost' 的访问被拒绝(使用密码:YES)”)的主要内容,如果未能解决你的问题,请参考以下文章
报错:pymysql.err.OperationalError: (1045, “Access denied for user ‘root‘@‘192.168.118.44‘
报错:pymysql.err.OperationalError: (1045, “Access denied for user ‘root‘@‘192.168.118.44‘
报错:pymysql.err.OperationalError: (1045, “Access denied for user ‘root‘@‘192.168.118.44‘
报错:pymysql.err.OperationalError: (1045, “Access denied for user ‘root‘@‘192.168.118.44‘