前言
作者之前一直是Docker党,不管在什么平台上,都一直使用Docker进行一些容器、环境的搭建。直到我发现Docker在其它操作系统上的性能问题,就同一个sql,在Docker For Mac执行需要7s+,Mac本地Mysql只需要2s左右,Windows Wsl2 Docker大概是2s~3s(Windows平台配置和Mac不一样,没有参考性)。可以不难发现,Docker For Mac在高版本的Mac上使用了全新Hypervisor,但是性能上并没有多少大的提升,特别是IO读写性能上,和原生差别还是非常大的,这里我放一篇文章,大家可以自行阅读专不专业我就不知道了,自己看吧,各平台基准测试和选择。Docker For Wsl2的话,作者感觉还是不错的,但IO性能听说也是有点不太行。但Windows上使用Docker还是能用的,平时用来跑几个版本的Mysql、Redis这些开发环境还是不错的,容器也比较好管理。说了这么多,作者目前是Mac做为主力开发系统,所以最后还是向性能妥协了,直接在Mac上装原生的Mysql,其实并没有比Docker复杂。下面是教程。
安装
brew install mysql@5.7 //安装mysql5.7
brew install mysql //默认会安装最新的Mysql
启动
我不太推荐像网上其它人那样启动,其实brew是有service命令可以管理启动的。我放个文章,具体可以自行浏览,brew serivces
brew services start mysql@5.7 就可以启动mysql5.7
修改配置
执行mysql --help然后在输出中找到Mysql的配置文件地址。
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
我一般会直接改~/.my.cnf,把自己的SQL_MODE加入到文件中,就可以了。
/usr/local/etc/my.cnf可以修改绑定的IP,如果需要监听所有地址,就把127.0.0.1改成0.0.0.0就好了。