sudo mysql
-- for MySQL ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; -- for MariaDB ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('root');
With a single query we are changing the auth_plugin
to mysql_native_password
and setting the root password to root and there isn’t any need to restart mysqld or start it with special privileges.
References
https://stackoverflow.com/questions/41645309/mysql-error-access-denied-for-user-rootlocalhost