How to grant full privileges to a user in MySQL
After setting up a lamp stack development environement with phpmyadmin locally on Linux you may notice that your phpmyadmin user (or other user name) doesn’t have the correct privileges to create new databases.
To use the phpmyadmin user to create new databases and users for those databases you need to grant full privileges to the phpmyadmin user, making the user a super user.
First access MySQL via the command line:
sudo mysql -u root
Once your in, run the following command:
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost';
You should now get a response that looks similar to this:
Query OK, 0 rows affected (0.000 sec)
What you have done is grant the phpmyadmin user full privileges, giving the user the same access as the root user (super user). Typically you should only grant users privilleses on a single database, however as your using a local enviroment and protentially managing multiple databases for multiple projects then it can be more efficient to have a single user (phpmyadmin) to access every database on the fly.
The final step is to flush privileges.
Now you can login to phpmyadmin and your user will have access to all databases and full privileges.