Ubuntu下安装python的torndb开发环境

目标:
在Python中通过“import torndb”,去访问mysql数据库。


一、在Ubuntu上安装MySQL
1. 安装命令:
 $ sudo apt-get install mysql-server
 $ apt-get isntall mysql-client
 $ sudo apt-get install libmysqlclient-dev
 
安装过程中会提示设置密码,注意设置了不要忘了,


2 安装完成之后可以使用如下命令来检查是否安装成功:
$ sudo netstat -tap | grep mysql
 
通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。
 
登陆mysql数据库可以通过如下命令:
$ mysql -u root -p 
 
-u 表示选择登陆的用户名, -p 表示登陆的用户密码,
上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。
 


3.mysql的一些常用操作:
$ show databases;
$ create database db_name;
$ use db_name;
$ show tables;
$ describe db;    --显示表的结构


二.安装mysqldb
1.去https://sourceforge.net/projects/mysql-python/ 下载源码
2.解压:
    tar xvzf MySQL-python-1.2.4b4.tar.gz
3.进入安装目录:
    cd MySQL-python-1.2.4b4/
4.将site.cfg中的mysql_config = /usr/local/mysql/bin/mysql_config 这一行前的#去掉,并且把mysql_config的路径设置正确(如果报mysql_config not found的错误,查看note1)。
5.编译:
    python setup.py build
6.安装:
    sudo python setup.py install 
7.测试,在python的命令行:
    import MySQLdb


note1: 
报错:mysql_config not found
1.用whereis mysql_config 查找mysql_config ,如果有,跳过2,执行3。
2.安装mysql-dev:
    sudo apt-get install libmysqlclient-dev
3.将site.cfg中的mysql_config = /usr/local/mysql/bin/mysql_config 这一行前的#去掉,并且把mysql_config的路径设置正确。
参考:http://blog.csdn.net/lmh12506/article/details/9198661


note2: 
报错:_mysql.c:29:20: fatal error: Python.h: No such file or directory
1.需要安装python-dev:
    sudo apt-get install python-dev
参考:http://www.cyberciti.biz/faq/debian-ubuntu-linux-python-h-file-not-found-error-solution/


三.安装torndb:
1.下载源码:https://github.com/bdarnell/torndb
2.解压文件:
    unzip torndb-master.zip 
3.进入安装目录:
    cd torndb-master/
4.编译:
    python setup.py build
5.安装:
    sudo python setup.py install
6.测试是否安装成功,在python命令行下:
    import torndb
效果:
>>> import torndb
>>> mdb = torndb.Connection('127.0.0.1:3306', 'db_name', 'user_name', 'user_pass', max_idle_time=5)
>>> mdb
<torndb.Connection object at 0x2724ed0>
>>> mdb._ensure_connected()
>>> mdb.query("SELECT * from test")
[{'id': 1L, 'name': u'chenjf'}]
>>> 

你可能感兴趣的:(Ubuntu下安装python的torndb开发环境)