Mysql – how to ‘flush hosts’ via ssh

MySQLssh

I have a MySQL db hosted on a commercial server as a shared account. Recently I have been getting an error: 'DBI connect('xxxxxx',…) failed: Host 'xxx.xxx.xxx.xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'.

However I can ssh into my host but trying to execute "mysqladmin flush-hosts' tells me 'DBI connect('xxx:example.com','xxxuserxxx',…) failed: Host 'xxx.xxx.xxx.xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'".

My host cannot help me (outside their scope) but I am hoping there is a way either to escalate my privileges, or execute a mysqladmin command.

Anyone?

Best Answer

What "users" exist in MySQL? I hope you are not doing everything as root (or other SUPER user)!

Once you get past this problem, be sure to have a user that will let you get in, but is not being used otherwise for the application.

What I just said is good advice, but it may not be relevant to your symptom. It seems that your host (at IP xxx.xxx.xxx.xxx) has been pounding on the shared account. Could this be? Could it be that a hacker got into your host, and is using it to get at the hosted MySQL?

Is there another machine from which you could try to do the FLUSH HOSTS?