Mac 使用 mysqlclient 报错 NameError: name ‘_mysql’ is not defined
作者:Bright Xu
Mac 安装 mysqlclient 时会报错
OSError: mysql_config not found
,请参考Mac 安装 mysqlclient
下面是 MacOS 使用 mysqlclient
时报错
关键错误信息:NameError: name '_mysql' is not defined
, Reason: image not found
, Library not loaded: @rpath/libmysqlclient.21.dylib
。
其中最关键的是Library not loaded: @rpath/libmysqlclient.21.dylib
,没有加载依赖库libmysqlclient.21.dylib
, 而这个库在/usr/local/mysql/lib/
下。
因此,只需将/usr/local/mysql/lib
添加到LD_LIBRARY_PATH
(动态库的查找路径)即可。
添加LD_LIBRARY_PATH
环境变量:
export LD_LIBRARY_PATH="/usr/local/mysql/lib:${LD_LIBRARY_PATH}"
重新打开终端,验证一下:
到此,问题就解决了。
至于如何添加环境变量,方法有很多,这里就不在赘述了。