难以远程连接MySQL

When I am connected to the internet, I can connect to my local MySQL server with my public/internet IP address, using MySQL workbench.

However, using the same parameters, I can not connect to the same MySQL server from a website running on PHP. I use the code line below:

new mysqli("41.58.XX.XX", "username", "mysql_pswd", "db_name");

I get the following error message:

(HY000/2003): Can't connect to MySQL server on '41.58.xx.xx'

Note: My configuration includes granting all privileges to the user on all host '%'

Please how can I do this correctly?