Joskus MySQL:n asennuksen aikana käyttäjä ei aseta pääkäyttäjän salasanaa, jolloin valtuutuksena käytetään unix_socket-menetelmää
. Jos tätä valtuutusta käytetään, vain järjestelmän pääkäyttäjä tai käyttäjä, jolla on sudo-oikeudet, voi tunnistautua pääkäyttäjänä.
Käytettäessä mysql_secure_installationia
yritetään muuttaa salasanaa, jolloin saat virheilmoituksen mysql:ltä SET PASSWORD
has no significance for user'root
'@
'localhost
'. Kerrotaan, miten se ratkaistaan ja poistetaan edelleen.
Virheen koko nimi on seuraava:
SET PASSWORD has no significance for user 'root'@'localhost' as the authentication method used doesn't store authentication data in the MySQL server. Please consider using ALTER USER instead if you want to change authentication parameters.
Virhe käännetään seuraavasti:
" SET PASSWORD
-menetelmän suorittaminen käyttäjälle'root
'@
'localhost
' ei ole järkevää, koska valittu valtuutusmenetelmä ei tue valtuutustietojen tallentamista. Jos haluat muuttaa valtuutusparametreja, käytä ALTER USER
-menetelmää.""
Unix_socket-valtuutusmenetelmä ei tallenna salasanoja, se ei suorita valtuutusta salasanan avulla, vaan tarkistaa, täyttääkö tietty käyttäjä superuser-ehdot. Käyttäjä ei myöskään voi yksinkertaisesti ohittaa pääkäyttäjän salasanan asettamista (jos sitä ei ole asetettu). Tämän vuoksi ohjelmisto ei anna sinun jatkaa. Voit korjata ongelman muodostamalla yhteyden MySQL:ään.
Sinun on myös muutettava valtuutusmenetelmä ja salasana samanaikaisesti:
sudo mysql
SQL-ympäristössä sinun on suoritettava seuraava komento:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Sulje MySQL-asiakasohjelma komennolla:
exit;
Kun sinun on suoritettava mysql_secure_installation
, anna pääkäyttäjän
salasana. Sen jälkeen voit suorittaa konfiguroinnin loppuun ilman ongelmia. Huomaa, että tämän jälkeen voit muodostaa yhteyden mysql:ään sudo-toiminnolla ilman salasanaa, koska salasanan valtuutusmenetelmä on aktivoitu. Voit palata aiempiin asetuksiin mysql_secure_installoinnin
jälkeen muodostamalla yhteyden MySQL:ään.
Käytä salasanaa ja suorita:
ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;
Siinä kaikki - ohje on valmis.