2

尝试登录 mysql 时,出现错误:

**[root@kics ]# mysql -u<user> -p<password> <dbName>
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '192.168.250.99' (2)**

我在互联网上搜索,但只得到答案

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (61)

实际上 192.168.250.99 是我自己的机器ip。,当我使用时 mysql -h127.0.0.1 -u<user> -p<password> <dbName>,它会登录但不是mysql -u<user> -p<password> <dbName>

作为其企业应用程序,我无法发布 my.cnf。请告诉我我可以提供哪个字段的值

重启机器后,我就可以登录了。但是我每次都需要重新启动它,然后对应用程序进行一些操作,我一次又一次地面临这样的问题

[root@krishna etc]# /usr/bin/mysqladmin -u root password 'pwd'
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '192.168.250.99' (2)'
Check that mysqld is running and that the socket: '192.168.250.99' exists!

请帮忙。谢谢

4

4 回答 4

1

猜测一下,您已经将机器的 IP 地址放在了 my.cnf 中,您应该在其中提供了文件系统套接字路径:

套接字=192.168.250.99

(以上是废话)。应该是这样的......

socket=/var/lib/mysql/mysql.sock

(我不明白为什么你不能为企业应用程序发布你的 my.conf 文件)

如果 my.cnf 文件确实是错误的,那么您的错误日志中应该有很多警告 - 如果这是一个企业应用程序,您为什么不知道呢?

于 2013-08-05T12:40:28.623 回答
0

您必须将您的服务器绑定到该特定 IP 地址
所以将其添加到您my.cnf[mysqld]

bind-address=192.168.250.99

或写

bind-address = 0.0.0.0

对于所有 IP 地址

于 2013-08-05T12:07:50.677 回答
0

最后我得到了解决方案。其实我在执行

[root@kics ]# mysql -u<user> -p<password> <dbName>

从 root 开始,这就是我收到此错误的原因。当我以 krishna(管理员配置文件)身份登录并执行相同的命令时,我成功登录。

[krishna@krishna ~]$ mysql -uroot -p<password> ;
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.10-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

我仍然不知道原因。

于 2013-08-06T10:06:04.687 回答
0

您的mysql客户端显然试图通过默认位置配置错误的套接字连接到 MySQL。它必须从某个意外位置加载配置文件。

本手册页列出了搜索配置文件的位置。在 Linux 上,可能的位置是:

/etc/my.cnf
/etc/mysql/my.cnf
SYSCONFDIR/my.cnf
$MYSQL_HOME/my.cnf
~/.my.cnf
~/.mylogin.cnf

当您找到实际文件时,请在or部分中查找socket子句。将此行替换为,或为该子句提供实际的套接字位置(路径)。clientmysqlhost=[your IP here or 127.0.0.1]socket

于 2013-08-07T22:49:28.557 回答