#2002 无法登录 MySQL 服务器(害死人的3306端口被占用)

//突然有一到,MysqlAdmin使用root登录报错:
#2002 无法登录 MySQL 服务器

调了一整天终于正常了,原来是害死人的3306端口被占用
//下面分享一下排错过程:
1、mysql未安装,排错方法见后
2、mysql未启动,排错方法见后
3、以上两项排除后依然报错“#2002 无法登录 MySQL 服务器”,按照网上的方法,将MysqlAdmin/config.inc.php的"$cfg['Servers'][$i]['host'] = 'localhost';"改为"$cfg['Servers'][$i]['host'] = '127.0.0.1';",报新错“无法登录 MySQL 服务器”,只是没有"#2002",改回原来的设置。
4、调整思路:
D:\>netstat -aon|findstr "3306"
  TCP    0.0.0.0:3306           0.0.0.0:0              LISTENING       1220
  TCP    127.0.0.1:50373        127.0.0.1:3306         TIME_WAIT       0
//多了第二行的3306端口占用,这个家伙(TIME_WAIT)害死人
5、使用netsh winsock reset结束掉TIME_WAIT,一切恢复正常,MysqlAdmin可以使用root正常登录了
D:\>netsh winsock reset
成功地重置 Winsock 目录。
您必须重新启动计算机才能完成重置。
D:\>


//--------------------
//第1项的检测方法:


//mysql服务器软件未安装
D:\>net start mysql
服务名无效。
请键入 NET HELPMSG 2185 以获得更多的帮助。
D:\>


//mysql服务器软件已成功安装,并成功启动mysql服务
D:\>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。
D:\>


//mysql服务器软件已成功安装,再次启动mysql服务时的提示
D:\>net start mysql
请求的服务已经启动。
请键入 NET HELPMSG 2182 以获得更多的帮助。
D:\>


//关闭mysql服务
D:\>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
D:\>


//--------------------
//第2项的检测方法:


//mysql服务未启动
D:\>cd D:\Program Files\MySQL\MySQL Server 5.0\bin
D:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -u root -p
Enter password: *****
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
D:\Program Files\MySQL\MySQL Server 5.0\bin>


//mysql服务已成功启动,但root密码输入错误
D:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -u root -p
Enter password: *****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: Y
ES)


//mysql服务已成功启动,以root身份登录进入mysql管理平台并进行数据查询操作
D:\Program Files\MySQL\MySQL Server 5.0\bin>mysql -u root -p
Enter password: *********
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 5.0.22-community-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.


mysql> use mysql;
Database changed
mysql> select user,host from user;
+------+-----------+
| user | host      |
+------+-----------+
| root | %         |
| root | localhost |
+------+-----------+
2 rows in set (0.00 sec)


mysql> exit;
Bye


D:\Program Files\MySQL\MySQL Server 5.0\bin>


你可能感兴趣的:(mysql)