2017-04-11 82 views
0

我在我的Windows上运行的Linux终端bash脚本命令提示符下,我试图安装和运行MySQL,但得到了以下错误:MySQL错误2002 HY00

C:\Users\rfasc>bash 
[email protected]:/mnt/c/Users/rfasc$ mysql 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket ' 
/var/run/mysqld/mysqld.sock' (2) 

我试图寻找从堆栈行吟诗人答案没有运气溢出。 谢谢。

回答

1

mysql命令默认连接到localhost。它通过查找来自socket file/var/run/mysqld/mysqld.sock的本地主机的套接字信息来完成此操作。现在,mysql命令找不到该文件。

我会做到以下几点:

  • 确保MySQL的服务器实际安装(这是mysqld
  • 尝试调用mysql与主机标志:mysql -h 127.0.0.1(这个尝试连接到本地主机,但不使用套接字文件)。
0

当试图连接到在Windows 10中通过Windows 10 Bash环境作为服务运行的MySQL服务器时,我遇到了这个错误。

问题是因为MySQL没有运行在Bash环境中.sock没有被创建。

添加-h 127.0.0.1是从命令行连接的一种方式,但更容易修改MySQL客户端配置。这样做,寻找到你的my.cnf文件是使用下面的命令位于:

mysql --help | grep "Default options" -A 1

,将返回与此类似:

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf

跟踪哪些文件系统正在使用。

sudo touch /etc/my.cnf

一旦你创建的文件(或者,如果你已经有了一个)编辑my.cnf文件,并添加如下内容::如果他们没有存在的位置之一创建该文件使用命令列出

[client]
protocol=tcp

如果您必须创建my.cnf文件,那么只需添加两行。

然后,无论何时使用mysql命令,它都会使用tcp 而不是袜子进行连接。