`
yeluowuhen
  • 浏览: 156447 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

unix下安装MySQLdb

 
阅读更多

        首先,MySQLdb需要mysql的客户端,确保你的环境中存在mysql_config,可以通过 yum install mysql-devel来安装,然后确保mysql_config在路径中可以被找到(通过find / -name mysql_config查看)。

  然后下载MySQL-python-1.2.4b4,解压后进入主目录进行安装,运行以下命令:python setup.py build及

python setup.py install, 如果无报错,运行python,引入import MySQLdb查看是否报错。如果无即安装顺利。

  在install过程中,如果遇到_mysql.c: In function ‘_mysql_ConnectionObject_Initialize’:

_mysql.c:602: error: expected expression before ‘)’ token

error: command 'gcc' failed with exit status 1,需要修改一下_mysql.c的源代码,在602行附近,找到以下代码:

if (!PyArg_ParseTupleAndKeywords(args, kwargs,
#ifdef HAVE_MYSQL_OPT_READ_TIMEOUT
"|ssssisOiiisssiOii:connect",
#else
"|ssssisOiiisssiOi:connect",
#endif
kwlist,
&host, &user, &passwd, &db,
&port, &unix_socket, &conv,
&connect_timeout,
&compress, &named_pipe,
&init_command, &read_default_file,
&read_default_group,
&client_flag, &ssl,
&local_infile,
#ifdef HAVE_MYSQL_OPT_READ_TIMEOUT
&read_timeout
#endif
))

  替换为:

if (!PyArg_ParseTupleAndKeywords(args, kwargs,
#ifdef HAVE_MYSQL_OPT_READ_TIMEOUT
"|ssssisOiiisssiOii:connect",
#else
"|ssssisOiiisssiOi:connect",
#endif
kwlist,
&host, &user, &passwd, &db,
&port, &unix_socket, &conv,
&connect_timeout,
&compress, &named_pipe,
&init_command, &read_default_file,
&read_default_group,
&client_flag, &ssl,
&local_infile
#ifdef HAVE_MYSQL_OPT_READ_TIMEOUT
, &read_timeout
#endif
))

  即倒数第五行&local_infile之后的逗号改为倒数第二行的起始处。再次运行python setup.py build,问题解决。

  

分享到:
评论

相关推荐

    给Python中的MySQLdb模块添加超时功能的教程

    1. 找到MySQLdb的源代码文件,通常在安装目录下的`_mysql.c`文件。 2. 在`_mysql.c`文件中找到`_mysql_ConnectionObject_Initialize`函数,这个函数负责创建新的数据库连接。 3. 在函数的参数列表中添加`read_time...

    Linux CentOS6.5下编译安装MySQL 5.6.16.docx

    ### Linux CentOS6.5下编译安装MySQL 5.6.16 #### 一、编译安装MySQL前的准备工作 在开始安装之前,需要确保系统已安装必要的编译工具和库,以便能够顺利地进行MySQL的编译安装。根据文档中的描述,这一步骤涉及到...

    linux安装mysql.pdf

    总之,在Linux环境下手动编译安装MySQL是一个复杂但必要的过程,特别是对于那些希望自定义配置或在旧版本系统上运行MySQL的情况。通过以上步骤,你可以确保MySQL顺利地在Linux上运行,并且满足特定的系统需求。

    cenos6.5编译安装mysql自作文档

    -DMYSQL_UNIX_ADDR=/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE...

    Mysql5.6.34安装部署和主从复制配置

    -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_...

    mysql安装文档

    `/usr/local/mysql`作为MySQL的安装目录,`/data/mysqldb`作为存放数据库数据文件的地方。这两个目录是MySQL运行时需要访问的关键路径,确保它们的权限设置正确,以便于MySQL服务启动和数据读写。 下载MySQL的源码...

    python.zip

    2. **跨平台**:Python可在Windows、Linux/Unix、Mac OS X等多种操作系统上运行,实现了良好的跨平台兼容性。 3. **丰富的库支持**:Python拥有大量的标准库和第三方库,涵盖网络、文件处理、数据库接口、图形系统...

    Linux环境下mysql5.7.13安装教程

    在Linux环境下安装MySQL 5.7.13的过程涉及到多个步骤和依赖项,本文将详细介绍这一过程。首先,你需要确保你的系统已经准备好了必要的软件包,包括`cmake-3.6.0.tar.gz`、`bison-3.0.4.tar.gz`以及`mysql-5.7.13.tar...

    framework-3.0.tar.gz_Linux/Unix编程_Python_

    标题中的"framework-3.0.tar.gz"是一个在Linux/Unix环境下常见的压缩文件格式,它包含了一个名为"framework-3.0"的目录或文件集合。`.tar`是Unix/Linux系统中用于打包多个文件或目录的工具,它可以将分散的文件和...

    linux Python相关

    2. Python在Linux环境下的安装和配置,以及如何通过包管理器安装Python库。 3. Apache HTTP Server的配置和管理,包括安装、配置虚拟主机和部署Python应用。 4. 使用Python的MySQLdb(或pymysql)库与MySQL数据库...

    gridpot:用于真实电网蜜网的开源工具

    网格锅依赖关系在构建和安装 gridlabd 和 conpot 之前安装这些依赖项自动配置/自动制作/libtool 颠覆Python开发mysql-server(库和开发文件) python-mysqldb xerces-c(库和开发文件) libcurl(ssl|gnutls) 更多 ...

    Centos6.5 编译安装mysql 5.6.16 详细教程

    在本文中,我们将深入探讨如何在CentOS 6.5上编译安装MySQL 5.6.16。这是一个详细的过程,适合对Linux系统有一定了解并希望手动编译安装MySQL的用户。首先,确保你的系统已经更新到最新,并且安装了必要的依赖库。 ...

    Python库 | amphoradata-0.1.3.tar.gz

    首先,需要解压文件,然后在命令行中运行`python setup.py install`或利用`pip install .`(如果在库的根目录下)来安装。 2. 导入:安装完成后,在Python代码中通过`import amphoradata`来使用库。 3. 文档查阅:...

    PyPI 官网下载 | mysqlrocket-0.0.7.tar.gz

    在Unix/Linux系统中,这样的文件可以通过“tar -zxvf mysqlrocket-0.0.7.tar.gz”命令解压,然后进入解压后的目录进行安装。在Python环境中,通常会使用setuptools或者pip来安装,这通常涉及到运行“python setup.py...

    Python库 | porter-db-0.0.6.tar.gz

    这种格式通常用于Linux和Unix-like系统中,它将多个文件和目录合并成一个单一的压缩文件,方便下载和分发。 描述中的"python库。资源全名:porter-db-0.0.6.tar.gz"进一步确认了这个资源是Python的一个数据库库,名...

    Python库 | td-0.3.tar.gz

    这种格式通常用于在Unix/Linux系统中打包和压缩文件,便于存储和传输。 在Python生态系统中,库(Library)是一系列预先编写好的函数或模块,可以被其他Python程序调用。"td" 这个库可能是针对某个特定领域或功能的...

Global site tag (gtag.js) - Google Analytics