When setting the host field for a user entry in the user table of the mysql db "%" is a wildcard. The @ symbol when you create a user designates where the user can connect from, "localhost" or a specific IP address/block. This is an extra security measure so, even if someone finds out the right username and password they still have to connect from a specific hostname or IP address.
So if user "website" has the "host" field set to "%" he can access the db from anywhere (NOT A GOOD THING). If you are setting up a site and a db on the same machine then you should set "host" to "localhost". This means that you are unable to connect as user "website" unless you are accessing the db server from the same machine.
I hope this makes sense 😉