2

We have a simple monitoring that opens a TCP connection on port 3306 of the mariadb server to check if the server is reachable. mariadb logs this with the following message:

[Warning] Aborted connection to db: 'unconnected' user: 'unauthenticated' host: 'xxx' (This connection closed normally without authentication)

after 100 of these connections, mariadb does not allow any further connections from the monitoring-host:

Host 'IP' is blocked because of many connection errors; unblock with 'mariadb-admin flush-hosts'

of course we could set max_error_connections much higher or flush hosts regularly - but that's not what we want

is there a way to allow a specific host to make unlimited connections? or how could we solve the problem?

4
  • Which client API does the monitoring tool use? Did you run netstat -a on both client and server machine (for checking tcp limits) ? Jan 4 at 15:05
  • it's not about tcp limits. it's just mariadb that doesn't allow any more connections if there were too many bad ones. but we cannot change the monitoring
    – fx123
    Jan 4 at 15:36
  • The solution is to find the reason for aborted connections, this could be a TCP problem. However this question should be moved to dba.stackexchange. Jan 4 at 15:55
  • the "problem" is that the monitoring simply opens a tcp connection to check whether the mysql server is still there and then closes the connection directly (without authentication)
    – fx123
    Jan 4 at 16:16

1 Answer 1

1

I fixed the abnormally noisiness of logs by pushing it down a warning level in MDEV-12274: Too many connections warning in error log (#2213).

The max_connect_error was mentioned in MDEV-21456 but I missed it. Attempts at a fix which is about to be reviewed.

There isn't a good workaround other than the two you've come up with for the time being.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.