MySQL begon systeemaccounts te gebruiken om verbindingen te accepteren sinds versie 5.7 met behulp van auth_socket wachtwoord plug-in. Het kan nodig zijn om verbinding te maken met de MySQL-server met behulp van het root-account met een wachtwoord met de optie mysql_native_password. We kunnen het standaardgedrag van root-account wijzigen om het eigen wachtwoord te gebruiken met behulp van de onderstaande commando's.
# Login to MySQL
sudo mysql
# Check password scheme of root user
SELECT user,authentication_string,plugin,host FROM mysql.user;
# Note the password plugin of root user
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | | auth_socket | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
# Change password plugin of root user
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '<pw>';
# Apply changes
flush privileges;
# Check password scheme of root user
SELECT user,authentication_string,plugin,host FROM mysql.user;
# Note the password plugin of root user
+------------------+-------------------------------------------+-----------------------+-----------+
| user | authentication_string | plugin | host |
+------------------+-------------------------------------------+-----------------------+-----------+
| root | *E5C4F73D963132CEF9BB4PA79LA818C08BAQC300 | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
Dit is hoe we de native wachtwoord-plug-in voor een MySQL-gebruiker kunnen gebruiken.