Mysql

ERROR 2002 (HY000): mysql 升級後無法連接到本地 MySQL 伺服器

  • March 15, 2016

我在 el capitan 10.11.3 上執行 mamp。我決定將 mysql 更新到 5.7.11 版本,所以我執行了這個:

tar xfvz mysql-5.7*

echo "stopping mamp"
sudo /Applications/MAMP/bin/stop.sh
sudo killall httpd mysqld

echo "creating backup"
sudo rsync -a /Applications/MAMP ~/Desktop/MAMP-Backup

echo "copy bin"
sudo rsync -av mysql-5.7.*/bin/* /Applications/MAMP/Library/bin/ --exclude=mysqld_multi --exclude=mysqld_safe

echo "copy share"
sudo rsync -av mysql-5.7.*/share/* /Applications/MAMP/Library/share/

echo "fixing access (workaround)"
sudo chmod -R o+rw  /Applications/MAMP/db/mysql/
sudo chmod -R o+rw  /Applications/MAMP/tmp/mysql/

echo "starting mamp"
ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
sudo /Applications/MAMP/bin/start.sh

echo "migrate to new version"
sudo chmod -R 777 /Applications/MAMP/db/mysql/
/Applications/MAMP/Library/bin/mysql_upgrade --user=root --password=root --host=localhost --port=3306

這是我在網上找到的腳本。我使用的壓縮包是:mysql-5.7.11-osx10.10-x86_64.tar

現在,我無法從應用程序啟動 mamp,當我在命令行中執行 mysql 時,我得到:

ERROR 2002 (HY000): 無法通過套接字 ‘/tmp/mysql.sock’ 連接到本地 MySQL 伺服器 (2)

我通過安裝 mysql-server 解決了這個問題,所以請確保您已經安裝了 mysql-server,而不是 mysql-client 或其他東西。

該錯誤意味著文件

/var/run/mysqld/mysqld.sock

不存在,如果您沒有安裝 mysql-server,那麼該文件將不存在。但是如果 mysql-server 已經安裝並且正在執行,那麼你需要檢查配置文件。

配置文件是:

/etc/my.cnf
/etc/mysql/my.cnf
/var/lib/mysql/my.cnf

/etc/my.cnf 

套接字文件配置可能是

/tmp/mysql.sock

並且在

/etc/mysql/my.cnf 

套接字文件配置可能是

/var/run/mysqld/mysqld.sock 

所以,刪除或重命名/etc/mysql/my.cnf,讓mysql使用/etc/my.cnf,那麼問題就解決了。

引用自:https://serverfault.com/questions/763742