【问题标题】:ImportError: this is MySQLdb version (1, 2, 4, 'beta', 4), but _mysql is version (1, 2, 5, 'final', 1)ImportError: 这是 MySQLdb 版本 (1, 2, 4, 'beta', 4),但 _mysql 是版本 (1, 2, 5, 'final', 1)
【发布时间】:2015-09-02 02:05:58
【问题描述】:

我已经在 mac 上安装了 MySQL-python,过程如下:

pip uninstall MySQL-python
brew install mysql
pip install MySQL-python

然后测试它:

python -c "import MySQLdb"

当我测试它时,它在我的 mac 终端上给了我以下错误:

ImportError: 这是 MySQLdb 版本 (1, 2, 4, 'beta', 4),但 _mysql 是版本 (1, 2, 5, 'final', 1)

请帮我解决这个问题。

【问题讨论】:

    标签: python mysql macos python-2.7 mysql-python


    【解决方案1】:

     pip uninstall mysqlclient
    

    然后做

    pip install mysqlclient==1.3.14 
    

    作为 1.4.1 版本存在一些问题

    【讨论】:

      【解决方案2】:

      我在运行 Python 程序时遇到了这个错误airflow:

      问题

      $airflow
      Traceback (most recent call last):
        File "/home/idx/.virtualenvs/airflow/bin/airflow", line 16, in <module>
          from airflow import configuration
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site-packages/airflow/__init__.py", line 31, in <module>
          from airflow import settings
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site-packages/airflow/settings.py", line 150, in <module>
      configure_orm()
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site-packages/airflow/settings.py", line 136, in configure_orm
      engine = create_engine(SQL_ALCHEMY_CONN, **engine_args)
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site-packages/sqlalchemy/engine/__init__.py", line 419, in create_engine
      return strategy.create(*args, **kwargs)
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", line 80, in create
          dbapi = dialect_cls.dbapi(**dbapi_args)
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site- 
          packages/sqlalchemy/dialects/mysql/mysqldb.py", line 102, in dbapi
          return __import__('MySQLdb')
        File "/home/idx/.virtualenvs/airflow/lib/python2.7/site-packages/MySQLdb/__init__.py", line 23, in <module>
      (version_info, _mysql.version_info))
      ImportError: this is MySQLdb version (1, 2, 5, 'final', 1), but _mysql is version (1, 4, 1, 'final', 0)
      

      背景

      我使用的 MySQLdb 位于:/home/will/.local/lib/python2.7/site-packages/MySQLdb/。该目录中的cat release.py 显示1.2.5 final 1

      __author__ = "Andy Dustman <farcepest@gmail.com>"
      version_info = (1,2,5,'final',1)
      __version__ = "1.2.5"
      

      修复

      为了使版本匹配,我运行了以下内容并为我修复了它:

      # for some reason, even though I had mysqlclient==1.4.1 from pip freeze, I had to uninstall it first, then reinstall
      pip uninstall mysqlclient
      pip install mysqlclient==1.4.1
      

      【讨论】:

        【解决方案3】:

        这是一个兼容性问题。我所做的是将我的 mysql python 放到 1.2.4b.4。

        如果您安装了 mysqldb,请使用

        卸载

        pip 卸载 MySQL-python

        然后安装相同的版本:

        pip install mysql-python==1.2.4b4

        这是测试版,因此是 b

        这对我有用。我通过进入 python 与 python 交互来测试

        然后导入 MySQLdb 就可以了。希望这会有所帮助

        【讨论】:

          【解决方案4】:

          路径下:

          /Library/Python/2.7/site-packages

          在我的 Mac 上,我可以看到 MySQL_python-1.2.5-py2.7.egg-infoMySQLdb强> 只需删除文件 MySQL_python-1.2.5-py2.7.egg-info/ 即可解决问题:

          sudo rm -rf MySQL_python-1.2.5-py2.7.egg-info/

          【讨论】:

            【解决方案5】:

            您可以重新安装您的MySQLdb-python 并安装此版本:MySQLdb-python-1.2.5

                pip uninstall MySQL_python
                pip install -Iv https://pypi.python.org/packages/source/M/MySQL-python/MySQL-python-1.2.5.zip#md5=654f75b302db6ed8dc5a898c625e030c
            

            【讨论】:

            • 我按照你的要求做了,我能够安装 MySQLdb-python。问题是我需要将 MySQLdb 模块导入我的 python 代码,该代码在我的谷歌应用引擎上运行。但不知何故,我仍然收到错误“没有名为 MySQLdb 的模块。”
            • 你可以查看lib_in_python:pip
            • 我检查过,没有帮助:(
            • 如果我想使用更新的 mysql-python 怎么办? but _mysql is version (1, 2, 5, 'final', 1)_mysql对应的包是什么?是否可以更新/升级 _mysql
            猜你喜欢
            • 2016-04-03
            • 1970-01-01
            • 1970-01-01
            • 2010-11-11
            • 1970-01-01
            • 1970-01-01
            • 2021-07-04
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多