MariaDB拒绝LOCALHOST连接

我想知道如何排除问题,没有足够的细节来重现问题并找到解决方法,这里是我找到的内容:

1)脚本每隔几分钟对本地主机MariaDB服务器执行多个查询 2)查询是异步的,因此多个查询在某个时刻开始失败,一旦这些查询失败,我就无法访问MariaDB命令行,出现错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

在某些罕见情况下,我能够访问(命令行管理"mariadb"),但任何查询都会失败并显示相同的错误。

  1. 在mysql日志文件中,我可以看到错误:

[Warning] Aborted connection x to db: 'Dbname' user: 'useraccessingdb' host: 'localhost' (Got an error reading communication packets)

在这一行之后,通常有许多更多的行,通常有从9到19的连接数量(中止连接x=9/19)。

我该如何调试这个问题? 可能会有什么问题? 谢谢您的时间。 操作系统是Ubuntu 19 MariaDB的版本是10.3.22

点赞
用户3342050
用户3342050

很可能是防火墙错误。

尝试启动 gufw 并查看你已经启用了什么规则。

可能只是默认的 允许外发,拒绝入站

即使 localhost 是同一台机器,它仍然将 _任何试图访问端口的流量视为入站_,因此您需要明确地允许它连接到您的数据库端口。

您必须查阅文档以找出该端口是什么。我以前就用过那些,但我不记得默认并是多少了,虽然它可能特定于您的目的。

https://www.linuxquestions.org/questions/ubuntu-63/what-ufw-rule-will-allow-port-80-to-localhost-but-only-from-localhost-4175595450


或者,您只需使用一个总的 允许所有本地流量,这应该对您正在进行的操作足够了。

127.0.0.1

另外,请仔细检查您的 hosts 文件是否定义了 localhost。

https://en.wikipedia.org/wiki/Hosts_%28file%29

我曾经遇到过无法定义的情况。

2020-11-08 07:59:15