无法通过套接字自制程序连接到本地MySQL服务器

我最近尝试安装MySQL的自制软件( brew install mysql ),当我尝试运行它,我得到以下错误:

错误2002(HY000):无法通过套接字“/tmp/mysql.sock”连接到本地MySQL服务器(2)

没有/tmp/mysql.sock也没有/var/lib/mysql.sock

我search了,并没有find任何mysql.sock文件。

我怎样才能解决这个问题?

当你通过服务器运行

mysql.server start

你应该看到/tmp/mysql.sock中的套接字。 但是,系统似乎期望在/var/mysql/mysql.sock中 。 为了解决这个问题,你必须在/ var / mysql中创build一个符号链接:

sudo mkdir /var/mysql

sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

这为我解决了。 现在我的phpMyAdmin与本地 127.0.0.1愉快地工作。

信贷去亨利

看起来像你的MySQL服务器没有启动。 我通常运行停止命令,然后再次启动它:

 mysqld stop mysql.server start 

同样的错误,这对我有用。

尝试使用“127.0.0.1”而不是“localhost”进行连接。

1)如果你能用下面的命令启动mysql;

 mysql server start 

2),如果你运行下面的命令时能够看到“mysql停止”;

 brew services list 

比如,将mysql添加到服务将解决您的问题。 使用这种方法,当系统启动时,mysql将作为服务启动。 要做到这一点,你可以运行下面的命令;

 brew services start mysql 

之后,您可以重新启动您的系统,并尝试连接到MySQL。 我做了同样的事情,并停止接收以下错误;

错误2002(HY000):无法通过套接字“/tmp/mysql.sock”连接到本地MySQL服务器(2)

我希望这有帮助。

我得到了同样的错误,这是什么帮助我:

 $ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents $launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist $mysql -uroot mysql> 

你需要运行mysql_install_db – 最简单的方法是,如果你在安装目录中:

 $ cd /usr/local/Cellar/mysql/<version>/ $ mysql_install_db 

或者,您可以为mysql_install_db一个basedir参数,如下所示:

 $ mysql_install_db --basedir="$(brew --prefix mysql)" 

我遇到了同样的问题,我的Mac和解决它,遵循以下教程

https://mariadb.com/resources/blog/installing-mariadb-10116-mac-os-x-homebrew

但是在继续之前不要忘记杀死或卸载旧版本。

命令:

 brew uninstall mariadb xcode-select --install ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - See more at: https://mariadb.com/resources/blog/installing-mariadb-10116-mac-os-x-homebrew#sthash.XQoxRoJp.dpuf brew doctor brew update brew info mariadb brew install mariadb mysql_install_db mysql.server start 

只是添加到这些答案,在我的情况下,我没有本地MySQL服务器,它运行在docker集装箱内。 所以套接字文件不存在,不能被“mysql”客户端访问。

sock文件是由mysqld创build的,mysql使用它来与之通信。 但是,如果您的mySql服务器不在本地运行,则不需要sock文件。

通过指定一个主机名/ IP的袜子文件不是必需的,例如

 mysql --host=127.0.0.1 --port=3306 --user=xyz --password=xyz 

只是为了完成这个线程。 因此MAMP(PRO)经常使用

这里的path是

 /Applications/MAMP/tmp/mysql/mysql.sock