mariaDB不会通过TCP连接(110“连接超时”)

时间:2018-02-24 18:42:19

标签: debian mariadb

所以,我已经远离服务器管理,所以也许我有点生疏。这是我第一次使用Debian 9和MariaDB而且“好”的东西不会让我通过TCP连接。

在Digitalocean上与MariaDB一起使用Debian 9.3,我确实尝试了

#bind-address           = 127.0.0.1
bind-address = 0.0.0.0

以上两个选项。

我可以通过套接字连接

mysql -u root -p

但不是通过TCP

mysql -u root -p -h 172.0.0.1

它需要永远(至少1分钟),然后给我以下错误消息

ERROR 2003 (HY000): Can't connect to MySQL server on '172.0.0.1' (110 "Connection timed out")

我已经搜索了很多,(也是我使用127 ...而不是localhost,因为localhost使用套接字)但没有什么真的有用。 skip-networking不再存在,日志文件看起来不错

2018-02-24 18:36:50 140298638565952 [Note] Server socket created on IP: '::'.
2018-02-24 18:36:50 140298638565952 [Note] /usr/sbin/mysqld: ready for connections.
Version: '10.1.26-MariaDB-0+deb9u1'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  Debian 9.1

看起来TCP连接已经关闭,但在哪里?

加上,我尝试通过telet连接到端口3306,它正在工作。

telnet 127.0.0.1 3306 试试127.0.0.1 ...... 连接到127.0.0.1。 逃脱角色是'^]'。 b 5.5.5-10.1.26-MariaDB的-0 + deb9u1q#Yt``Cl-? x8LTD6〜; JAH%mysql_native_password

第二次添加

netstat -an | grep tcp | grep 3306

tcp6       0      0 :::3306                 :::*                    LISTEN

只是IPv6 ???

2 个答案:

答案 0 :(得分:0)

0.0.0.0绑定到默认界面(127.0.0.1)

根据错误消息"Can't connect to MySQL server on '172.0.0.1'",您尝试在172.0.0.1上连接但在127.0.0.1上没有连接

答案 1 :(得分:0)

好的,经过一些挖掘,整个事情不是连接问题,这是一个权限问题。

OK  mysql -u root -p
NOK mysql -u root -p -h 127.0.0.1
OK  mysql -u mysqladmin -p -h 127.0.0.1

所以我可以通过socket连接,而不是通过root连接。

鉴于我最初只想测试服务器是否在不同的端口上正常运行,我对此很好。

我找到了一些链接,这些链接通过TCP覆盖root登录,对于登陆这里并需要找到root / TCP问题解决方案的人来说。

MySQL root access from all hosts

https://www.digitalocean.com/community/questions/mariadb-enable-root-login-via-both-unix_socket-and-tcp