在雪豹上安装mysqldb
Posted
技术标签:
【中文标题】在雪豹上安装mysqldb【英文标题】:Install mysqldb on snow leopard 【发布时间】:2010-11-30 18:03:42 【问题描述】:我正在尝试开始在 Django 上使用 Python 我是一名专业的 php 开发人员,并被告知要在我当前的 apache 和 mysql 设置上设置 django 和 python,但是我无法获取用于 python 的 Mysqldb 模块要工作,我必须遵循大约 6 组不同的指令,我正在运行雪豹并且本地安装了 mysql,它不是 MAMP 或类似的一部分。请告诉我我需要从哪里开始以及我需要遵循哪些步骤,我将不胜感激。
谢谢
【问题讨论】:
究竟是什么不工作?模块是不是一开始就没有安装,还是 Django 拒绝连接到 MySQL 数据库服务器? 相关问题:***.com/questions/1904039/… 【参考方案1】:在 MAC OS X 10.6 上,照常安装软件包。动态导入错误是因为DYLD路径错误。导出路径并打开python终端。
$ sudo python setup.py clean
$ sudo python setup.py build
$ sudo python setup.py install
$ 导出 DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH
$python
导入 MySQL 数据库
现在导入 MySQLdb 应该可以正常工作了。
您可能还想在构建和安装之前手动删除构建文件夹。 clean 命令不能正确地清理构建文件。
【讨论】:
这甚至发生在 Python 错误指定了动态库文件的整个绝对路径时,这很疯狂(它清楚地知道该文件应该在哪里找到)。感谢您发布此内容。 PS:如果您在 Eclipse 中使用 pydev,您还需要 Python Interpreter 的环境。或者至少在将它添加到我的 .bashrc 之后我必须这样做【参考方案2】:我建议安装 macports(最新的 svn 主干)并从那里安装 mysql。
sudo 端口安装 mysql5-server
下载 MySQL-python-1.2.2 源码
确保 /opt/local/lib/mysql5/bin 在您的路径中或编辑 site.cfg 以包含:
mysql_config = /opt/local/lib/mysql5/bin/mysql_config
注释掉_mysql.c的第38行
// #define uint unsigned int
然后运行:
sudo python setup.py install
应该都很好。
【讨论】:
要将其添加到您的路径中,请编辑~/.profile
,将export PATH=$PATH:/opt/local/lib/mysql5/bin
添加到末尾,然后运行source ~/.profile
。验证:echo $PATH
【参考方案3】:
[部分回答]
拔牙会更有趣。 MySQL/Django/Mac 是一场灾难。这是我得到的最远的:
获取MySQLDB 1.2.3 进入并修改 setup_posix.py:
变化:
mysql_config.path = "mysql_config"
收件人(取决于您的 MySQL 的版本号):
mysql_config.path = "/usr/local/mysql-5.1.34-osx10.5-x86_64/bin/mysql_config"
python setup.py 构建 python setup.py 安装
这是一个很好的article
【讨论】:
【参考方案4】:首先,确保安装了XCode。如果没有 XCode,许多对开发人员很重要的内置 Apache2 服务器就会丢失;最值得注意的是GNU Compiler Collection,我认为这是 MySQL 绑定所必需的。
【讨论】:
Xcode 是安装雪豹光盘上的最新版本我还像其他人建议的那样安装了 10.4 SDK。还有小费吗?【参考方案5】:这里的关键之一是确保您同时运行 64 位的 MySQL 和 Python 适配器。 Snow Leopard 上默认安装的 Python 2.6.1 是 64 位的,因此您必须安装 64 位的 MySQL 并构建 64 位的 MySQLdb 适配器。
-
确保您安装了最新的 Xcode
从 DMG 安装 64 位 MySQL - http://dev.mysql.com/downloads/mirror.php?id=401941#mirrors
从http://download.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.3.tar.gz下载MySQL-python-1.2.3
提取 site.cfg 并进行以下编辑:
mysql_config = /usr/local/mysql/bin/mysql_config
然后从你的终端运行
ARCHFLAGS="-arch x86_64" python setup.py build
sudo python setup.py install
然后你应该打开一个 Python shell 并输入:
import MySQLdb
如果你没有得到任何错误,你就是金子。
【讨论】:
【参考方案6】:Xcode 已安装。
按照这些说明设置 apache/php/mysql:
http://maestric.com/doc/mac/apache_php_mysql_snow_leopard
我安装了免费的 32 位版本的 EPD(这是可选的,但我想要 numpy/scipy)。
确保您的 ~/.profile 中有这些行(第二行仅在您安装了 EPD 的情况下):
export PATH=/usr/local/mysql/bin/:/usr/local/bin:/usr/local/sbin:$PATH
export PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:$PATH"
下载mysqldb并运行:
python setup.py build
sudo python setup.py install
安装 Django 或 web2py 的官方版本。之后一切正常。您可以尝试“编写您的第一个 Django 应用程序,第 1 部分”来测试它在 settings.py 中的使用位置:
DATABASE_ENGINE = 'mysql'
DATABASE_NAME = 'Django Polls'
DATABASE_USER = '*****'
DATABASE_PASSWORD = '*****'
DATABASE_HOST = '127.0.0.1'
DATABASE_PORT = '3306'
我还使用 Navicat Lite 和 Sequel Pro 来处理 MySQL。
Pydev 是一个非常适合与 Django 一起使用的 IDE。
【讨论】:
'*' 应该是 DATABASE_USER = 'your_db_user_name' DATABASE_PASSWORD = 'your_db_password'【参考方案7】:-
安装最新的 64 位 DMG 版本的 MySQL。如果您已经安装了 MySQL,请记住备份您的数据库。
在终端输入这一行:
sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql
编辑mysql-python安装目录下的setup_posix文件。
换行
mysql_config.path = "mysql_config"
到
mysql_config.path = "/usr/local/mysql/bin/mysql_config"
-
Myslq-Python 需要 64 位版本的 Python。新的 Python 2.7 64 位版本在 /usr/local/bin/python 中创建了一个别名。
在mysql-python文件夹中输入以下行
sudo /usr/local/bin/python setup.py clean
sudo ARCHFLAGS="-arch x86_64"
sudo /usr/local/bin/python setup.py build
sudo /usr/local/bin/python setup.py install
最后试一试:
python
import MySQLdb
【讨论】:
【参考方案8】:您可以通过安装 Mariadb 来让您的生活更轻松(尤其是在 Lion 上):
http://mariadb.org/
它是 MySQL 的直接替代品,在 OSX 上即插即用。唯一没有得到的是 MySQL 系统设置。
【讨论】:
以上是关于在雪豹上安装mysqldb的主要内容,如果未能解决你的问题,请参考以下文章