Ik heb geprobeerd mijn MySQL-rootwachtwoord opnieuw in te stellen. Ik heb mysqld_safe --skip-grant-tables
uitgevoerd, het root-wachtwoord bijgewerkt en de gebruikerstabel gecontroleerd om er zeker van te zijn dat deze aanwezig is. Nadat ik de mysql-daemon opnieuw had opgestart, probeerde ik in te loggen met het nieuwe root-wachtwoord dat ik zojuist heb ingesteld en krijg nog steeds toegang geweigerd voor ‘root’-fouten van de gebruiker. Ik heb ook geprobeerd mysql volledig te verwijderen en opnieuw te installeren (inclusief het verwijderen van het bestand my.cnf
) en nog steeds geen geluk. Heeft iemand suggesties voor wat ik nu kan doen?
Bij voorbaat dank
Antwoord 1, autoriteit 100%
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('mypass');
FLUSH PRIVILEGES;
Antwoord 2, autoriteit 38%
bekijk dit eens uit de MySQL-referentiehandleiding:
Eerste login mysql:
# mysql -u root -p
Voer vervolgens bij mysql-prompt uit:
UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
Dan
FLUSH PRIVILEGES;
Bekijk deze pagina voor meer informatie: Het root-wachtwoord opnieuw instellen : Unix-systemen
Antwoord 3, autoriteit 28%
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
U vindt Het root-wachtwoord opnieuw instellenin de MySQL-documentatie.
Antwoord 4, autoriteit 18%
Dit is het bijgewerkte antwoord voor WAMP v3.0.6 en hoger
> UPDATE mysql.user
> SET authentication_string=PASSWORD('MyNewPass')
> WHERE user='root';
> FLUSH PRIVILEGES;
In MySQL versie 5.7.x is er geen wachtwoordveld meer in de mysql-tabel. Het is vervangen door authentic_string. (Dit is voor de terminal/CLI)
UPDATE mysql.user SET authentication_string=PASSWORD('MyNewPass') WHERE user='root';
FLUSH PRIVILEGES;
(Dit indien voor PHPMyAdmin of een Mysql GUI)
Antwoord 5, autoriteit 16%
Volg de onderstaande stappen.
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables
sudo service mysql start
sudo mysql -u root
use mysql;
show tables;
describe user;
update user set authentication_string=password('1111') where user='root';
FLUSH PRIVILEGES;
log in met wachtwoord 1111
Antwoord 6, autoriteit 13%
Ik heb ook wat rondgezocht en waarschijnlijk zijn sommige antwoorden geschikt voor bepaalde situaties,
mijn situatie is Mysql 5.7 op een Ubuntu 18.04.2 LTS-systeem:
(verkrijg root-rechten)
$ sudo bash
(wachtwoord instellen voor root db-gebruiker + beveiliging in stappen implementeren)
# mysql_secure_installation
(geef toegang aan de root gebruiker via wachtwoord in plaats van socket)
(+ edit: blijkbaar moet je het wachtwoord opnieuw instellen?)
(zet het niet op ‘mySecretPassword’!!!)
# mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> set password for 'root'@'localhost' = PASSWORD('mySecretPassword');
mysql> FLUSH PRIVILEGES;
mysql> exit;
# service mysql restart
Veel dank aan zetacu(en erich) voor dit uitstekende antwoord(na een paar uur zoeken…)
Veel plezier 😀
S.
Bewerken (2020):
Deze methode werkt niet meer, zie deze vraagvoor toekomstig gebruik…
Antwoord 7, autoriteit 12%
Gevonden! Ik ben vergeten het wachtwoord te hashen toen ik het veranderde. Ik heb deze vraag gebruikt om mijn probleem op te lossen:
update user set password=PASSWORD('NEW PASSWORD') where user='root';
Ik ben het PASSWORD('NEW PASSWORD')
vergeten en heb het nieuwe wachtwoord gewoon in platte tekst ingevoerd
Antwoord 8, autoriteit 7%
Op MySQL 8.0.4+
Om de huidige rootgebruiker bij te werken:
select current_user();
set password = 'new_password';
Andere gebruiker updaten:
set password for 'otherUser'@'localhost' = 'new_password';
Wachtwoordbeleid instellen voordat het wachtwoord wordt bijgewerkt:
set global validate_password.policy = 0;
set password = 'new_password';
set password for 'otherUser'@'localhost' = 'new_password';
Andere/betere manier om het root-wachtwoord bij te werken:
mysql_secure_installation
Wilt u vasthouden aan 5.x-authenticatie, zodat u nog steeds oudere apps kunt gebruiken?
Op my.cnf
default_authentication_plugin = mysql_native_password
Om root bij te werken:
set global validate_password.policy = 0;
alter user 'root'@'localhost' identified with mysql_native_password by 'new_password';
Antwoord 9, autoriteit 6%
Dit werkte voor mij –
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
https://dev. mysql.com/doc/mysql-windows-excerpt/5.7/en/resetting-permissions-windows.html
Antwoord 10, autoriteit 6%
Op MySQL 8 moet u de hashmethode voor het wachtwoord opgeven:
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'new-password';
Antwoord 11, autoriteit 5%
Voor MySQL 5.7.6 en hoger:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Voor MySQL 5.7.5 en eerder:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
Antwoord 12, autoriteit 3%
Je moet het wachtwoord opnieuw instellen! stappen voor mac osx (getest en werkend) en ubuntu
MySQL stoppen
$ sudo /usr/local/mysql/support-files/mysql.server stop
Start het in de veilige modus:
$ sudo mysqld_safe --skip-grant-tables
(bovenste regel is het hele commando)
Dit zal een doorlopend commando zijn totdat het proces is voltooid, dus open een ander shell/terminal-venster, log in zonder wachtwoord:
$ mysql -u root
mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
MySQL starten
sudo /usr/local/mysql/support-files/mysql.server start
je nieuwe wachtwoord is ‘wachtwoord’.
Antwoord 13, autoriteit 3%
Voor de huidige nieuwste mysql-versie (8.0.16) werkte geen van deze antwoorden voor mij.
Na verschillende antwoorden te hebben bekeken en ze samen te voegen, heb ik dit uiteindelijk gebruikt dat werkte:
update user set authentication_string='test' where user='root';
Hopelijk helpt dit.
Antwoord 14, autoriteit 2%
Het opdrachtregelprogramma mysqladmingebruiken om het MySQL-wachtwoord te wijzigen:
mysqladmin --user=root --password=oldpassword password "newpassword"
Antwoord 15, autoriteit 2%
Dit is voor Mac-gebruikers.
Update: op 8.0.15 (misschien al voor die versie) werkt de functie PASSWORD() niet. U moet het volgende doen:
Zorg ervoor dat u eerst MySQL hebt gestopt (hierboven).
Start de server in veilige modus met privilege bypass:
sudo mysqld_safe –skip-grant-tables
vervang deze mysqld_safe door uw MySQL-pad zoals in mijn geval het geval was
sudo /usr/local/mysql/bin/mysqld_safe skip-grant-tables
dan moet je de volgende stappen uitvoeren.
mysql -u root
UPDATE mysql.user SET authenticatie_string=null WHERE User=’root’;
VORM VOORRECHTEN;
afsluiten;
Dan
mysql -u root
VERANDER GEBRUIKER ‘root’@’localhost’ GEDENTIFICEERD MET caching_sha2_password DOOR
‘uwwachtwoord’;
Antwoord 16
In MySQL 5.7 wordt het wachtwoord vervangen door ‘authentication_string’.
gebruik
update user set authentication_string=password('myfavpassword') where user='root';
Antwoord 17
Voor mij konden alleen deze stappen me helpen het root-wachtwoord in te stellen op versie 8.0.19:
mysql
SELECT user,authentication_string FROM mysql.user;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_pass_here';
FLUSH PRIVILEGES;
SELECT user,authentication_string FROM mysql.user;
Als je veranderingen kunt zien voor de rootgebruiker, dan werkt het.
Bron: https://www.digitalocean. com/community/questions/can-t-set-root-password-mysql-server
Antwoord 18
een veel voorkomende fout die ik van tijd tot tijd tegenkom, is dat ik de optie -p
vergeet, dus weet je zeker dat je het volgende hebt gebruikt:
mysql -u root -p
Antwoord 19
Ik heb het antwoord van @kta geprobeerd, maar het werkte niet voor mij.
Ik gebruik MySQL 8.0
Dit werkte voor mij:
mysql>SET PASSWORD FOR 'root'@'localhost' = 'yourpassword'
Antwoord 20
Zoveel reacties, maar ik ben op deze manier geholpen:
sudo mysqladmin -u root password 'my password'
In mijn geval kreeg ik na installatie mysql-service zonder wachtwoord voor rootgebruiker, en ik moest het wachtwoord instellen voor mijn veiligheid.
Antwoord 21
stop alle wamp-services, verlaat wamp.
open kladblok en typ>
STEL WACHTWOORD IN VOOR ‘root’@’localhost’ = PASWOORD(”);
sla het dan op in c: drive met een willekeurige naam .. zoals deze “c:/example.txt”
ga nu naar uw “wamp” falder wamp > bin > mysql > mysql(uw versie) > bin
in mijn geval is het pad “C:\wamp\bin\mysql\mysql5.6.17\bin”
Kopieer nu je pad en voer dan cmd uit met (ctrl + r) typ dan “cmd” (enter)
type cd, klik met de rechtermuisknop op cmd en plak het pad (enter)
typ nu (mysqld –init-file=C:\example.txt) zonder accolades dan (enter)
start vervolgens de pc opnieuw of open taskmgr en sluit mysqld.exe af
start wamp en je wachtwoord wordt verwijderd…
Antwoord 22
Voor MacOS-gebruikers, als u uw root-wachtwoord vergeet, het antwoord van @thusharaK(https://stackoverflow.com/a/28601069/ 5628856) is goed, maar er zijn wat meer trucjes:
Als je systeemvoorkeur gebruikt om mysql serverside te starten, gewoon
sudo mysqld_safe --skip-grant-tables
werkt mogelijk niet voor u.
Je moet ervoor zorgen dat de opdrachtregelargumenten hetzelfde zijn met de systeemstartconfiguratie.
De volgende opdracht werkt voor mij:
/usr/local/mysql/bin/mysqld --user=_mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/usr/local/mysql/data/mysqld.local.err --pid-file=/usr/local/mysql/data/mysqld.local.pid --keyring-file-data=/usr/local/mysql/keyring/keyring --early-plugin-load=keyring_file=keyring_file.so --skip-grant-tables
U kunt
. gebruiken
ps aux | grep mysql
om die van jezelf te controleren.
Antwoord 23
Of gebruik gewoon een interactieve configuratie:
sudo mysql_secure_installation
Antwoord 24
Op Ubuntu,
sudo dpkg-reconfigure mysql-server-5.5
Vervang 5.5
door je huidige versie en je wordt gevraagd om het nieuwe root-wachtwoord.