数据库连接不上,端口号为0?
这两天尝试弄一下黑马的苍穹外卖,发现怎么也连接不上,发现idea报这样的连接错误:
Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
前端也一直报错:
排查了jdbc的连接没有错误后,查了很多资料发现是数据库连接的问题。
有说法是把my.ini文件中skip_networking注释掉,再重新启动。
如果不确定,可以先看端口号:
(1)查看 port参数
mysql> show variables like 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port | 0 |
+---------------+-------+
1 row in set (0.00 sec)
注意果然 端口居然变成了0
因为在本地通过socket方案数据库是能够正常登陆的,但是通过网络来登录数据库就报错,这时我们会想到一个参数skip-networking
1)查看skip-networking参数
mysql> show variables like 'skip_networking';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| skip_networking | ON |
+-----------------+-------+
果然是开了这个参数,所以要把他注释掉
最后关掉服务重启MySQL就可以了
mysql> show variables like 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port | 3306 |
+---------------+-------+
1 row in set (0.00 sec)