python下的MySQLdb使用

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

今早,2驾直升机从中关村头上穿过!至今天半年又没有了。。。。。扯到这吧。

下载安装MySQLdb

<1>linux版本

   sudo apt-get install python-mysqldb

首先他需要setuptoos 工具的支持

1. wget -q http://peak.telecommunity.com/dist/ez_setup.py

2.python ez_setup.py ( 这一步必然失败,是为了第三步取得url准备的.)

运行这行的时候,linux会停留在Downling ~~~~~这类似的上面.

这是因为你的这个目录下中没有setuptools-0.6c11-py2.4.egg东西.

3. wget  http://pypi.python.org/packages/2.4/s/setuptools/setuptools-0.6c11-py2.4.egg

注意:第三步的url是根据第二步得到的url.

这时候你再运行第二步.之后再运行安装你前面不能够安装的软件.应该就解决了setuptools方面的问题了.

关键东西:是要准备好2个东西:ez_setup.py和setuptools-0.6c8-py2.4.egg.

准备完成后开始

apt-get -y install python-dev

 wget http://cdnetworks-kr-1.dl.sourceforge.net/project/mysql-python/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz

tar -zxvf MySQL-python-1.2.3.tar.gz

cd 进去修改 mysql路径

vim site.cfg

mysql_config = /usr/local/mysql/bin/mysql_config  #我myslq是源码包装的所以。

 python setup.py install  这样基本是没有问题的

 

然后导入模块试试  import MySQLdb

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

可能出现这个错误 好不用怕 :

ln -s  /usr/local/mysql/lib/libmysqlclient.so.18  /usr/lib

一个链接解决。

在导入出现下面问题

######################

/usr/lib/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-i686.egg/_mysql.py:3: UserWarning: Module _mysql was already imported from /usr/lib/python2.4/site-packages/MySQL_python-1.2.3-py2.4-linux-i686.egg/_mysql.pyc, but /root/soft/MySQL-python-1.2.3 is being added to sys.path

原因是,install后MySQLdb模块已经被放到python的site-pachages目录中;但我在当前目录也存在相同的模块,所以可能会重复导入。只要切换到其他目录运行就可以了。

换个目录 成功了就。

<2>windows版本

网上搜索到一个http://www.technicalbard.com/files/MySQL-python-1.2.2.win32-py2.6.exe

安装后import MySQLdb会出现 DeprecationWarning: the sets module is deprecated 这样一个警告,google之

原因是2.6不知sets这个模块,不过已经添加了set内置函数。找到MySQLdb文件夹的中__init__.py,注释掉from sets import ImmutableSet class DBAPISet(ImmutableSet):添加class DBAPISet(frozenset):;找到converters.py注释掉from sets import BaseSet, Set。然后修改第45行和129行中的Set为set。

搞定。

 

 

 

本文转自 houzaicunsky 51CTO博客,原文链接:http://blog.51cto.com/hzcsky/891002


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
SQL 关系型数据库 MySQL
|
6月前
|
Ubuntu Java 关系型数据库
Ubuntu下python安装mysqldb(驱动)
先跳转的该目录下,然后执行 sudo python setup.py install 然后就是各种问题,需要配置这个那个的。
48 0
|
SQL 关系型数据库 MySQL
Python编程:MySQLdb模块对数据库的基本增删改查操作
Python编程:MySQLdb模块对数据库的基本增删改查操作
101 1
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
132 0
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
55 0
|
Unix 数据库连接 调度
猿创征文|python gevent 执行MySQLdb/mysqlclient连接卡住解决方案
猿创征文|python gevent 执行MySQLdb/mysqlclient连接卡住解决方案
239 0
猿创征文|python gevent 执行MySQLdb/mysqlclient连接卡住解决方案
|
SQL 关系型数据库 MySQL
Python编程:MySQLdb模块对数据库的基本增删改查操作
Python编程:MySQLdb模块对数据库的基本增删改查操作
120 0
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'
Python3.6报错:ModuleNotFoundError: No module named 'MySQLdb'

热门文章

最新文章