ERROR 2003(HY000):无法连接到'127.0.0.1'上的MySQL服务器(111)

Cha*_*pps 130 mysql mysql-error-2003

我使用以下命令:

mysql -u root -h 127.0.0.1 -p
Run Code Online (Sandbox Code Playgroud)

并且错误消息是:

ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111)
Run Code Online (Sandbox Code Playgroud)

谁能帮我解决这个问题?

Jus*_*ent 214

如果您正在使用ubuntu,则必须使用以下步骤来避免此错误(如果未启用复制):

  1. 运行命令 vim /etc/mysql/my.cnf
  2. bind-address = 127.0.0.1使用#符号发表评论
  3. 重启你的mysql服务器一次.

更新

在步骤1中,如果bind-addressmy.cnf文件中找不到,请在文件中查找/etc/mysql/mysql.conf.d/mysqld.cnf.

启用MySQL复制时更新

尝试IP在'my.cnf instead oflocalhost或127.0.0.1`中连接MySQL服务器绑定的MySQL服务器.

  • 谢谢!!!我一直在努力解决这个问题很长一段时间!我注释掉了那行,保存了文件,然后运行`service mysql restart`.现在它有效! (8认同)
  • @developer,我在这里找到了我的:/etc/mysql/mysql.conf.d/mysqld.cnf (6认同)
  • `/ etc/mysql/my.cnf`中没有`bind-address = 127.0.0.1` (4认同)
  • 如果你的 Debian 风格正在运行 MariaDB —— 谁知道呢,你可能会在 /etc/mysql/mariadb.conf.d 目录中找到绑定地址;您还可以通过在 /etc/mysql/ 中运行以下命令来找到带有绑定地址的文件: grep -r "bind\-address" 。 (2认同)
  • @JustinVincent - 谢谢!另一个更新给你。我正在使用 Debian 10(在 DigitalOcean 服务器上),它位于:`/etc/mysql/mariadb.conf.d/50-server.cnf`。 (2认同)

小智 13

尝试localhost而不是127.0.0.1连接或在您的connection-config.在Debian Squeeze Server上为我工作


Hen*_*nry 8

当您在连接数据库之前忘记启动数据库时会发生这种情况:

mysql.server start
Run Code Online (Sandbox Code Playgroud)

然后

mysql -u root -p -h 127.0.0.1
Run Code Online (Sandbox Code Playgroud)


Bun*_*nyk 6

在我的情况下(远程连接)帮助关闭服务器上的防火墙.

service iptables stop
Run Code Online (Sandbox Code Playgroud)


S.R*_*nth 6

可能会出现此问题,因为您的MySQL服务器未安装并正在运行.为此,请以管理员身份启动命令提示符并输入命令:

"C:\Program Files (x86)\MySQL\MySQL Server 5.1\bin\mysqld" --install
Run Code Online (Sandbox Code Playgroud)

如果您获得"服务成功安装"消息,则需要启动MySQL服务.为此:转到"服务"窗口(任务管理器 - >服务 - >打开服务)搜索MySQL并从顶部导航栏启动它.然后,如果尝试打开mysql.exe它将工作.

  • 一个小错误,`cd"C:\ Program Files(x86)\ MySQL\MySQL Server 5.1\bin"`然后`mysqld --install`.此外,服务器编号取决于下载. (2认同)

Yu *_*aao 5

查看my.cnf文件,如果有包含[client]部分,并且port不是真正的侦听端口(默认3306),则必须使用显式参数连接服务器-P 3306,例如

mysql -u root -h 127.0.0.1 -p -P 3306


nkr*_*1pt 0

您需要在 MySQL 配置文件( my.inimy.cnf )中将绑定地址参数更改为 127.0.0.1或使用其中定义的参数。

如果这不起作用,您应该检查 MySQL 服务是否确实正在运行。

  • 如果存在此行,mysql 将仅侦听列出的地址。要启用远程访问,您应该删除此行。请注意这所带来的安全影响。 (3认同)