Mysqldb安装的各种错误解决办法

1.错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'
  mysql.sock的目录/var/lib/mysql/mysql.sock

解决办法:
        ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

 

在linux下安装MySQLdb模块

这里下的是 MySQL-python-1.2.2.tar.gz
下载完了后,解压缩

tar zxf MySQL-python-1.2.2.tar.gz

之后会产生一个叫 MySQL-python-1.2.2 的目录,进去。
这里就要做一些配置了,往往问题就在这个地方。
要想编译这个模块,就必须要先安装开发版的mysql,这里不说mysql怎么安装,假设装好了,并且装到/opt/mysql下。
这个目录下有一个叫 site.cfg 的文件,我们要修改的设置就在这里面,它的内容如下:

[options]
# embedded: link against the embedded server library
# threadsafe: use the threadsafe client
# static: link against a static library (probably required for embedded)

embedded = False
threadsafe = True
static = False

# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
#mysql_config = /usr/local/bin/mysql_config

# The Windows registry key for MySQL.
# This has to be set for Windows builds to work.
# Only change this if you have a different version.
registry_key = SOFTWARE\MySQL AB\MySQL Server 5.0

以#开头的是注释,这里可能需要修改的有两个,一个是mysql_config,一个是threadsafe。往往编译不过就是这两个造成的。
mysql_config是指定mysql_config这个文件的路径,一般在mysql安装路径下,这里mysql装到/opt/mysql,因此取消mysql_config这行的注释,修改为
mysql_config=/opt/mysql/bin/mysql_config
一般来说这样就可以编译了。但是,如果在编译到最后时,报告链接不上libmysqlclient_r.so的话,还需要把threadsafe设置为False。

mysqldb安装出错:
1.zipimport.ZipImportError: can't decompress data; zlib not available
解决办法重新编译一下Python源码安装包,如下:
    1  tar jxvf Python-2.5.2.tar.bz2     2  cd Python-2.5.2/
    3  ls
    4  sudo ./configure     5  gvim Modules/Setup
    6  sudo gvim Modules/Setup
       在这里把454行左右的 找到
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
去掉注释
     zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
然后重新编译,安装python


2.ImportError: libmysqlclient_r.so.16: cannot open shared object file: No such file or directory
  #解决方法
#updatedb
#locate libmysqlclient_r.so.16
/usr/local/mysql-5.1.30-linux-i686-glibc23/lib/libmysqlclient_r.so.16.0.0
/usr/local/mysql-5.1.30-linux-i686-glibc23/lib/libmysqlclient_r.so.16
/usr/local/mysql/lib/mysql/libmysqlclient_r.so.16
/usr/local/mysql/lib/mysql/libmysqlclient_r.so.16.0.0
#vi /etc/ld.so.conf
在ld.so.conf中加入:
                    /usr/local/mysql/lib/mysql/
#ldconfig  -v
再次测试,成功!

你可能感兴趣的:(python,基础,MySQL,Python,Linux,Windows,Socket)