这些是解决此问题的选项:
选项1:将您的主机更改为127.0.0.1
staging:
adapter: mysql2
host: 127.0.0.1
username: root
password: xxxx
database: xxxx
socket: your-location-socket
选项2:看来您的服务器MySql中有2个连接。要找到您的套接字文件位置,请执行以下操作:
mysqladmin variables | grep socket
对我来说:
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock' exists!
要么
mysql --help
我收到此错误是因为我在OS X版本10.9.5中为PHP应用程序安装了XAMPP。在此处选择默认的套接字位置之一。
我选择默认的Rails应用程序:
socket: /tmp/mysql.sock
对于我的PHP应用程序,我安装了XAMPP,所以在这里设置了我的套接字:
socket: /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
OS X中的OTHERS套接字位置
对于MAMPP:
socket: /Applications/MAMP/tmp/mysql/mysql.sock
对于MySQL的软件包安装程序:
socket: /tmp/mysql.sock
对于与Mac OS X Server捆绑在一起的MySQL:
socket: /var/mysql/mysql.sock
对于Ubuntu:
socket: /var/run/mysqld/mysql.sock
选项3:如果所有这些设置都不起作用,则可以删除套接字位置:
staging:
# socket: /var/run/mysqld/mysql.sock
希望对您有帮助。