已解决 pymysql 报错:RuntimeError: ‘cryptography‘ package is required for sha256
已解决 pymysql 报错:RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
在使用 pymysql 连接 MySQL 数据库时,可能会遇到以下错误:
RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
虽然网上有很多建议安装 'cryptography' 包来解决这个问题,但实际上可能并不需要这样做。如果您之前的代码运行正常,突然出现了这个错误,那么可能是因为重启了服务器或电脑,每次重启都会导致这个错误发生。
解决方案 1:手动链接 MySQL
为了解决这个问题,您可以尝试手动链接一次 MySQL,然后错误就会消失。这可能是因为需要生成密码的缓存。以下是详细步骤:
- 打开终端(或命令提示符)。
- 在终端中,输入以下命令连接到 MySQL 服务器:
mysql -h hostname -u username -p
例如:mysql -h 127.0.0.1 -u root -p
将 hostname 替换为 MySQL 服务器的地址,将 username 替换为您的 MySQL 用户名。
- 按 Enter 键后,系统会提示您输入密码。输入密码后按 Enter 键。
- 如果连接成功,您将看到类似于以下内容的提示符:
mysql>
现在,您已成功连接到 MySQL 服务器,可以在提示符下执行 SQL 命令了。
- 要退出 MySQL 客户端工具,可以输入 exit 或 quit 命令,然后按 Enter 键。
第二种方法:
除了手动链接 MySQL 外,您还可以使用第三方工具来链接 MySQL,例如 Navicat Premium。
第三种方法:
@echo off
echo.
echo Connecting to MySQL server...
echo.
"D:\Program Files\mysql\MySQL Server 8.0\bin\mysql" -h localhost -u root -pH9MvYSqY3JmAC4aj -e "exit"
echo.
echo MySQL server disconnected.
echo.
pause
在 Python 开发过程中,可能会遇到各种各样的问题。
在编写 https://www.ed3000.com 阿里云搜索引擎时,前端开发到后端各式各样的莫名其妙 bug 都有可能出现。因此,当遇到任何故障时,记录并解决问题是非常重要的。