日期:2014-05-16  浏览次数:20477 次

客户端连接MySQLdb 端口设置
今天一同事自学python,用到数据库连接,遇到一个诡异问题(有点夸张了)

在mysql端口是3306(默认)的情况下,用Python做客户端连,竟然随便输个port都可以?!

在对比了我的代码后,发现他添加了unix_socket参数,估计是这个问题了,OK,问题来了,

把这个参数删除,程序竟然报错,找不到/tmp/mysql.socket了..

绕了一圈(不容易啊),发现他的ip用了localhost,会不会是这个原因呢,改为127.0.0.1,试之,

果然,估计是因为用了localhost,压根没有走tcp连接,自然也没有用到port,直接寻找本地

unix_socket了,为了验证这一点,用php也走了遍流程就是它了!

以前倒没太注意过,备忘下。