续:在mac下安装mysqlclient报错 (试过各种解决方案后)

来源:3-2 python链接mysql数据库

卡西法

2018-06-05

起初报错如下:

http://img.mukewang.com/szimg/5b1669910001704623921374.jpg


尝试如下解决方案:

  1. 安装python3.6.5

  2. 使用新命令:pip3 intstall mysqlclient

  3. 升级pip和pip3 工具到最新版本

  4. 安装xcode,安装Command_Line_Tools_macOS_10.13_for_Xcode_9.4 (以为是“gcc”问题)


但是仍然报错如下:

http://img.mukewang.com/szimg/5b166a8e0001d45925281600.jpg


最后一段摘录(

  typedef void(*Udf_func_any)();

                               ^

                                void

    _mysql.c:1894:3: error: use of undeclared identifier 'my_bool'

                    my_bool recon = reconnect;

                    ^

    _mysql.c:1895:58: error: use of undeclared identifier 'recon'

                    mysql_options(&self->connection, MYSQL_OPT_RECONNECT, &recon);

                                                                           ^

    1 warning and 2 errors generated.

    error: command 'gcc' failed with exit status 1


个人分析排查: gcc我已经正确安装,command 'gcc' 是failed  不是command not exist

问题应该在上面两段,但是网上查不到类似情况。


与这个问题已经斗争一天了,不解决这个问题没发继续学下去

再次求助老师

写回答

3回答

卡西法

提问者

2018-06-06

已解决。


1.卸载Mac自带的python2.7

2.重新安装python官方的2.7版本

3.安装python3.6.5 

4.在Mac命令行中输入sudo vi ~/.bashrc  (前提是已安装sudo命令)

提示输入本机密码,输入后出现如下代码:

“alias python2='/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7'

alias python3='/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6'

alias python=python3”

末尾的“alias python=python3”是环境变量更改语句,“=”后面是要更改成的python版本,我这里是使用python3.(也可以使用python2)

5.在mac命令行中输入 pip install mysqlclient,提示安装成功,结束!


ps:

后来了解这个问题是mac自带python2.7存在bug导致,仅仅安装python3不管用,就得卸载自带pythoy2重装官方版。


以上感谢java工程师suyear,远程帮我排查问题到凌晨1点多,不然我的python之路可能就从入门到放弃了。

宣传下suyear的博客:https://segmentfault.com/u/enue 

同时感谢NavCat老师,耐心给出了多项解决方案,再次鸣谢。




2
1
NavCat
加油,我们一起进步
2018-06-06
共1条回复

NavCat

2018-06-05

或者使用PyMySQL试试

https://pypi.org/project/PyMySQL/


0
1
卡西法
已解决,可以安装mysqlclient,感谢老师。
2018-06-06
共1条回复

NavCat

2018-06-05

直接 import MySQLdb 会报错吗

0
0

Python操作三大主流数据库-MySQL+MongoDB+Redis

一次实战同时掌握Python操作MySQL,MongoDB,Redis 三大数据库使用技巧

2024 学习 · 376 问题

查看课程