MySQLdb 导入从命令行工作,但在 PyCharm 中崩溃

Posted

技术标签:

【中文标题】MySQLdb 导入从命令行工作,但在 PyCharm 中崩溃【英文标题】:MySQLdb import works from command line but crashes in PyCharm 【发布时间】:2018-12-30 23:03:46 【问题描述】:

我正在使用安装了 mysqldb 包的 Python 2.7 virtualenv。 如果我从 命令行 运行 Python 并执行 import MySQLdb,则可以正常工作。但是,如果我从 PyCharm 终端 运行它,则会出现错误:

ImportError: libmysqlclient.so.20: cannot open shared object file: No such file or directory

如果我执行包含行import MySQLdb 的文件test.py,则会出现相同的模式。从命令行执行时它可以工作,而从 PyCharm 执行时它会崩溃。

我已经用谷歌搜索了这个错误,似乎卸载并重新安装 MySQLdb 可以修复它。但我想了解为什么该错误只发生在 PyCharm 中。 我确保命令行和 PyCharm 终端都使用

相同的虚拟环境(通过检查sys.executable) 相同的工作目录(通过检查os.getcwd()) 相同的路径(通过检查sys.path

我还检查了PYTHONPATH 是否未定义。 还能有什么不同?

【问题讨论】:

【参考方案1】:

你必须将 pycharm 指向你的 virtualenv。转到设置-> 项目解释器并为 pycharm 提供 python 可执行文件的路径。一旦在那里它应该工作。请注意,如果您有混合 WSL/windows 设置,则需要一个用于 WSL 的 virtualenv 和一个用于 windows/pycharm 的单独 virtualenv。

【讨论】:

以上是关于MySQLdb 导入从命令行工作,但在 PyCharm 中崩溃的主要内容,如果未能解决你的问题,请参考以下文章

用于发送邮件的 php 脚本在通过浏览器执行时不起作用,但在从命令行执行时工作正常

从命令行导入 PostgreSQL CSV

python导入(MySQLdb)和apache python_egg_cache的问题

当我尝试将 csv 导入 MYSQLdb 时,Python“命令不同步”错误消息

python基础,导入模块,if语句,while语句

从 JAVA MySQLdb 导入调用 Python 脚本