pymysql.err.OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: YES)")
时间: 2023-11-27 13:48:15 浏览: 1985
MySQL-python报错的修改
这个错误提示表明用户'root'@'localhost'没有权限访问MySQL数据库,可能是因为密码错误或者没有授权。以下是一些可能的解决方法:
1.检查密码是否正确,可以尝试重新设置密码并确保在连接时使用正确的密码。
2.检查用户是否具有访问数据库的权限,可以使用GRANT语句授权用户访问数据库。
3.检查MySQL服务器是否正在运行,可以使用命令行或者服务管理器检查MySQL服务的状态。
4.检查防火墙设置,确保MySQL端口(默认为3306)没有被阻止。
以下是一个示例代码,用于连接MySQL数据库并执行查询:
```python
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='password', database='test')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 使用 execute() 方法执行 SQL 查询
cursor.execute("SELECT VERSION()")
# 使用 fetchone() 方法获取单条数据.
data = cursor.fetchone()
print("Database version : %s " % data)
# 关闭数据库连接
db.close()
```
阅读全文