? ? 記錄一次mac安裝mysql啟動報錯問題Unable to lock ./ibdata1 error: 35。首先,這是第一次在公司新領的mac上面去安裝mysql,在去年換新電腦之前,老電腦也安裝過,沒出現(xiàn)過這種問題。其次,自己的幾臺windows筆記本也安裝過,也沒出現(xiàn)過這樣的問題。
目錄
一、mysql首次安裝后啟動報錯
二、查看報錯日志 ? ?
三、問題排查和修復
四、總結
如果你也是跟我一樣的問題,而你又不想了解我的排查過程,可以直接跳轉到總結查看問題解決方式。
一、mysql首次安裝后啟動報錯
? ? 安裝的mysql最新版,安裝后,查看mysql版本,沒問題:
mysql -V
? ? 然后,我使用如下命令啟動mysql:
sudo mysql.server start
? ? 同時,注意到當啟動mysql時,有個err的log生成到了data目錄下:
.Logging to '/usr/local/mysql/data/appledeMacBook-Pro-2.local.err'.
? ? 等.......走完后,最后是報錯如下:
ERROR! The server quit without updating PID file (/usr/local/mysql/data/appledeMacBook-Pro-2.local.pid).
? ? 如下圖所示:?
二、查看報錯日志 ? ?
看到這個問題,一臉懵逼。首先,先去查看報錯的log,xxxx.local.err,結果打開data文件夾時發(fā)現(xiàn)沒有權限,如下:
? ? 修改data目錄的訪問權限:
sudo chmod -R 777 /usr/local/mysql/data/
??
? ? 打開data目錄下的err文件,查看log信息:
?? ??
三、問題排查和修復
首先,我們看到有這么一個warning:
Setting lower_case_table_names=2 because file system for /usr/local/mysql/data/ is case insensitive
? ? 翻譯一下:
設置lower_case_table_names=2,因為/usr/local/mysql/data/的文件系統(tǒng)不區(qū)分大小寫。?
? ? 去哪里設置這個lower_case_table_names=2呢?前往/usr/local/etc目錄,看是否有my.cnf這么個文件,如果沒有就新建,然后輸入lower_case_table_names=2,保存。
? ? 重新啟動mysql,仍然報一樣的錯,所以說上面的warning并不是導致該問題的原因:
? ? ?所以,我們需要看下這個error:
? ? ?無法鎖定./ibdata1,error35,35代表資源臨時不可用。查了一下,說是這個文件可能被其他的mysql進程打開了。于是,先看下當前是否有mysql進程在運行:
ps -eaf | grep mysql
?發(fā)現(xiàn)有多個進程在運行,執(zhí)行
sudo kill -9 83661
使用這種方式殺掉所有的mysql進程,再次重啟mysql應該就可以了。
如果還不行,重點來了,執(zhí)行如下命令:
sudo launchctl unload -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist
然后啟動mysql,成功:
文章來源:http://www.zghlxwxcb.cn/news/detail-565389.html
四、總結
? ? 最后總結下,如果你在mac遇到了mysql啟動不了的情況(尤其可能是首次安裝后啟動),遇到了Unable to lock ./ibdata1 error: 35的報錯,那么殺死所有mysql的進程重啟應該就解決了。如果還不行,那么執(zhí)行 sudo launchctl unload -w /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist 命令,再次啟動mysql。文章來源地址http://www.zghlxwxcb.cn/news/detail-565389.html
到了這里,關于mac上mysql啟動報錯問題Unable to lock ./ibdata1 error: 35的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!