董志强 2019-06-29
自从macOS升级至Mojave后小问题不断,现在使用Homebrew安装MySQL默认也是8.0版本,和Python类似我们依赖的组件可能还不支持高版本,新版本的某些更新和调整导致比如Sequel Pro和mysqldb不可用。当然我们也可以使用官方的MySQLWorkbench,之前介绍了如何在macOS下安装多版本Python,现在继续分享macOS如何降级MySQL。
macOS Mojave 降级安装 MySQL 5.72018年12月17日 - 初稿
阅读原文 - https://wsgzao.github.io/post...
扩展阅读
Install MySQL 5.7 on macOS Mojave - https://medium.com/@at0dd/ins...
brew update brew install mysql We've installed your MySQL database without a root password. To secure it run: mysql_secure_installation MySQL is configured to only allow connections from localhost by default To connect run: mysql -uroot To have launchd start mysql now and restart at login: brew services start mysql Or, if you don't want/need a background service you can just run: mysql.server start
# 正常关闭并删除MySQL mysql.server stop brew services stop mysql brew remove mysql # 无法正常删除MySQL ps -ax | grep mysql stop and kill any MySQL processes brew remove mysql brew cleanup sudo rm /usr/local/mysql sudo rm -rf /usr/local/var/mysql sudo rm -rf /usr/local/mysql*
# 安装MySQL 5.7 brew install [email protected] brew link --force [email protected] We've installed your MySQL database without a root password. To secure it run: mysql_secure_installation MySQL is configured to only allow connections from localhost by default To connect run: mysql -uroot [email protected] is keg-only, which means it was not symlinked into /usr/local, because this is an alternate version of another formula. If you need to have [email protected] first in your PATH run: echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc For compilers to find [email protected] you may need to set: export LDFLAGS="-L/usr/local/opt/[email protected]/lib" export CPPFLAGS="-I/usr/local/opt/[email protected]/include" For pkg-config to find [email protected] you may need to set: export PKG_CONFIG_PATH="/usr/local/opt/[email protected]/lib/pkgconfig" To have launchd start [email protected] now and restart at login: brew services start [email protected] Or, if you don't want/need a background service you can just run: /usr/local/opt/[email protected]/bin/mysql.server start # 开机自启动 brew services restart [email protected] # 设置环境变量 echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc # 手动启动和关闭 /usr/local/opt/[email protected]/bin/mysql.server start /usr/local/opt/[email protected]/bin/mysql.server stop
Python中最连接Mysql常用的驱动是:
# 使用MySQLdb ,但是提示importerror no module named mysqldb brew install mysql-connector-c pip install mysql-python # 可能会出现以下错误,按照提示做即可 Error: Cannot install mysql because conflicting formulae are installed. mysql-connector-c: because both install MySQL client libraries Please `brew unlink mysql-connector-c` before continuing. Unlinking removes a formula's symlinks from /usr/local. You can link the formula again after the install finishes. You can --force this install, but the build may fail or cause obscure side-effects in the resulting software.