为了装逼(随便戒游戏),弄个MAC MINI
OS X系统版本是10.10.1 (14B25)
本人java农一枚,平时上班都是用oracle的,但自己练手都是用mysql,所以一般自己的机子都会有mysql跟oracle(貌似现在OS X也能安装oracle了,听说会很折腾)
随着环境逐渐搭建起来,今天就要安装mysql
二话不说就去oracle官网找mysql并下载,
而今天官网的下载最新的是Mac OS X 10.9 (x86, 64-bit), mysql 版本5.6.22
对于我这样一位java农看来,可能会有版本不兼容的问题,不过官网只有这个最新的,也只能下载并安装了
下载好dmg文件安装后,用mysql命令看能不能连接,
结果报错了,错误如下:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
好吧,有错误代码就好办,果断度娘一下,
总结网上各种说法,主要有以下几点:
1、/tmp/mysql.sock没有这个文件,在my.cnf的[mysqld]下面添加上一句
socket = /tmp/mysql.sock就行
2、系统用户没有操作/tmp目录的权限,导致mysql.sock没有创建成功
好吧,其实安装完,连my.cnf文件都没有呢!
我也怀疑是不是版本的问题,比较我的系统版本跟mysql的版本不对
也度娘了一下,也有人说在OS X 10.10版本安装出现问题,问是不是一定对应版本才行~~~
结果有人建议用homebrew安装(homebrew是什么,自己度娘吧)
这样,我也就把安装mysql的相关文件夹全部rm掉(其实我也不知道有没有删除得干净,也是网上找的),
用homebrew安装mysql
安装后运行还是报刚才的错,我了个去~
那只能看看tmp是否权限不足,my.cnf文件的问题
反正就是折腾,当码农就要有折腾的觉悟
权限跟my.cnf文件都建好,但还是报那个错误
重启mysql呗
mysqld stop停止服务,打印显示如下:
有这样一句:
'FEDERATED' is disabled
网上搜了一下,说在my.cnf的[mysqld]下面加上一句 federated就可以了
加上后mysql start打印信息如下:
现在'FEDERATED' is disabled已经没有了,但还有个Warning:
Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
网上搜了一下没结果,
果断放大招,重装mysql
而这次重装步骤如下:
运行命令:brew uninstall mysql
打印:
Uninstalling /usr/local/Cellar/mysql/5.6.22...
接着
brew install mysql
这样,就成功了。。。(有点莫名其妙)
最后总结一下,
首先,官网安装后,是没有生成my.cnf文件的,没有这个文件,网上说可以自己建立,而我在/etc跟/usr/local/etc下面都建立,
具体我安装的mysql读取那个文件,我也没细致研究
其次,建立my.cnf后估计要重装一次mysql才行
当然可能小伙伴们在OS X下面安装遇到的情况跟我不一样,这个都有错误信息什么的可以在网上搜
本博完~~~