Can't connect to MySQL server via HTTP/HTTPS

Posted December 3, 2017 5.1k views
DigitalOceanFirewallIPv6Ubuntu 16.04

I have my app connected to the database and when I try to request info I get this: sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1130, “Host ’<router>’ is not allowed to connect to this MySQL server”).

Also when I connect to my Droplet via SSH I get this: The UFW firewall is enabled. All ports execpt for SSH, HTTP/HTTPS and MySQL
are blocked by default.

How can I change this so my app can connect to the database? I need HTTP/S

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer


In addition to allowing port 3306 connections to pass through your firewall, you will also need to configure the MySQL server to listen on the public (or private) network interface so that it can accept external connections. You can do so by editing /etc/mysql/my.cnf, setting bind-address to, and restart MySQL.

Exposing your MySQL server publicly is not recommended however. Use SSL connections only, and only allow your app server to connect using ufw.