I have a hosted MySQL DB that I need to give access to from my customers site. They have a fast broadband connection which can present them with a range of IP addresses from a fixed pool.

So I need to lock down the access to their MySQL user so that the Host setting is a range of addresses within a class. Not the whole class.

I realise I can use a wildcard such as 81.91.71.% but that is too generous. Their range is more like -->

Is there a way to do this other than create 15 users, one for each individual IP address? thanks Mark

4 Answers 4


you can use the grant assign to a netmask like:

GRANT ALL PRIVILEGES ON database.* TO 'user'@'';

It will give you access from ->, just change the subnet part to fit the range you need.

You can see more info at mysql doc account names

  • 1
    Hi. Thanks for offering this idea but I did take a look at the MySQL link you provided before posting and it does say that netmasks can only be used on 8, 16, 24 or 32 bits of the address. In other words, only whole classes of address. The example states that wont work.
    – Mark Ogier
    Aug 30, 2013 at 15:25

For IP ranges MySQL only allows you to use % as a "anything" wild card or an underscore for a single digit.

Alternatively you could setup reverse DNS to have desired IPs resolved to something like mysql-%.mydomain.com


I realize this is an old question.

Controlling access via an IP address might be better solved at a different layer in your stack. A server firewall for example (iptables,firewalld,etc..) could filter access to MySQL from a specific range.

If you often offer connections to externals folks; A VPN or SSH bastion would give you control over the ip your client is getting. Bonus: You get an encrypted connection. (MySQL's protocol isn't encrypted by default. It's extra effort to setup encrypted connections.)


You can add the same user multiple times, but with different IP address. MySQL allows that.

Your Answer

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

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