Ubuntu 18.04 start mysql without root privilege

David NIWEWE picture David NIWEWE · May 1, 2018 · Viewed 9.7k times · Source

I just installed ubuntu 18.04 and installed LAMP on it, however I had trouble using mysql without the root privilege. when I write:

mysql -u root -p

and enter the password I configured it throws access denied. unless if I write

sudo mysql -u root -p

and enter the password that I'm able to connect. But I don't want the sudo cause it prevents having workbench to connect to mysql, same applies to phpmyadmin too. Any hints on how to fix that?

Answer

MarCPlusPlus picture MarCPlusPlus · May 1, 2018

It should only be the "-u root" user that requires sudo. It's good practice to not use root for most access anyways, so just login as root using sudo and create a newuser:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@'localhost';

Then you should be able to access "mysql -u newuser" without sudo.