MariaDB突然拒绝正在工作的远程连接

我有这个奇怪的问题,我想知道是否有人拥有它。

我的网站的体系结构包含两个服务器:一个运行Web应用程序(Python / Django),另一个运行MariaDB。

该网站已经运行了一年多了,而且非常稳定,但现在我遇到了这个奇怪的问题。

上个星期随机,Django开始崩溃,因为它无法连接到服务器。 我收到带有此错误日志的电子邮件:

_mysql_exceptions.OperationalError: (1045, "Access denied for user 'user'@'xxxx' (using password: YES)") 

对我来说,这很明显,这是一个数据库问题,所以我做的第一件事是重新启动运行MariaDB的服务器。 之后,networking应用程序可以连接到服务器,一切正常,运行正常。

奇怪的是,用户在正确的IP表中,网站运行相同的凭据差不多一年,重置后,它又开始工作。

两天之后,昨天再次发生,两次都以同样的方式“固定”。

错误日志是空的,我开始logging所有的查询。 在拒绝访问Web应用程序之前,我没有发现在执行的最后一个查询中有什么奇怪的地方。

不幸的是,我找不到有类似问题的人…任何帮助都非常受欢迎!

数据库不小(10GB),可以关联吗?

谢谢!!

他只是说没有logging错误。

我也有类似的情况,我有一个在Azure中设置的复制组,并且在任何时候重新启动一个mariadb服务,突然间,复制用户在连接到它的从站上获得“访问被拒绝”。 我必须停止奴隶,将所有奴隶线程设置为零,启动奴隶,再次停止,设置从属线程到我以前设置的,启动奴隶,一切都工作。 停止并启动从站不起作用。 我完全通过更改主控命令重置了从属设备上的复制function,过了一段时间就变得很麻烦。

当服务启动和DNS时,似乎有些奇怪的问题,但我不确定。 我也没有跟踪它。

这只是一个黑客攻击,但尝试它可能会为你工作(我创build了一个BASH脚本来做到这一点,直到我跟踪问题)。 此外,请确保您拥有的所有设置都使用IP地址,而不是主机名(复制,CNF设置,无论您在哪里使用它们)。 尝试设置skip_name_resolve也不同。

为了logging,我使用Ansible,这个部署和我之前在GCE和裸机上使用过的一样。 没有理由应该采取不同的行动。