The official documentation is here:
On our system, whatever method you choose needs to boil down to two SQL commands:
- CREATE USER 'username' IDENTIFIED BY 'password';
- GRANT ALL ON dbname.* TO 'username';
Do not specify a hostname when creating users; since we use a clustered hosting network, you cannot predict from what host a connection will originate. Also, attempts to "GRANT ALL ON *.*" will typically fail due to the lack of the FILE permission by default on admin users, and it is bad practice to grant administrative privileges to a website user. Finally, try to avoid granting ALL if you can; security is always enhanced by minimizing the privileges of website users.