python - 导入错误: No module named authentication

标签 python mysql mysql-connector-python

我已经安装了 MySQL Connector/Python 模块。它显示在目录/usr/lib/python2.7/site-packages/mysql/connector/中。我还将此目录添加到 $PATH 中。

当我执行以下 Python 程序时,出现以下错误。

import mysql.connector
config = {
    "database": "XXXX",
    "host": "XXXX",
    'user': 'XXXX',
    "password": "XXXX",
    "table": "XXXX",
    "charset": "utf8"
}

try:
    cnx = mysql.connector.connect(**config)

except mysql.connector.Error as err:
  if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
    print("Something is wrong with your user name or password")
  elif err.errno == errorcode.ER_BAD_DB_ERROR:
    print("Database does not exists")
  else:
    print(err)
else:
  cnx.close()

错误:

Traceback (most recent call last):
  File "config.py", line 1, in <module>
    import mysql.connector
  File "/usr/lib/python2.7/site-packages/mysql/connector/__init__.py", line 28, in <module>
  File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 39, in <module>
  File "/usr/lib/python2.7/site-packages/mysql/connector/protocol.py", line 34, in <module>
ImportError: No module named authentication

在/usr/lib/python2.7/site-packages/mysql/connector/目录下有一个authentication.py和authentication.pyc。

我不明白这个问题...

最佳答案

问题是组成 MySQL 包的目录和文件位于 PYTHONPATH 中,但没有读取权限(除了 root 之外)。答案是 chmod a+x 目录和 chmod a+r *.py 该目录和子目录中的文件。

关于python - 导入错误: No module named authentication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26022267/

相关文章:

mysql - 如何防止 MySQL Create View 破坏地理空间函数名称?

MySQL python 连接器 IndexError : bytearray index out of range

python - 无法在 Azure Data Studio 中将内核更改为 Python

python - 管理中的可翻译 Manytomany 字段生成许多查询

python - 在python中的类中定义一个方法

php - 插入但如果重复则忽略,如果存在于另一个表中则设置不同的值

php - 一个 PHP 表单保存到 MySQL,另一个则不保存,不知道为什么

python - 尝试将 ip 地址作为字符串插入 mysql 表时出现错误

python - 无法使用 mysql-connector-python 连接到本地主机,错误 1130

Python:如果不存在则赋值