sql >> Database >  >> RDS >> Mysql

Hoe het MySQL-rootwachtwoord opnieuw in te stellen

MySQL is een van de meest populaire databasebeheersystemen voor webapplicaties. MySQL heeft een root-wachtwoord of een wachtwoord op beheerdersniveau, net als veel webservices. Met de root-wachtwoorden kunnen gebruikers elke functie op het hoogste niveau in een database uitvoeren.

Bij het instellen van MySQL wordt aanbevolen dat u een root-wachtwoord voor uw database instelt voor beveiligingsproblemen. Dit betekent echter niet dat je MySQL niet kunt gebruiken zonder root-wachtwoord. Het is aan jou om over de taak na te denken en te beslissen of je een root-wachtwoord instelt of niet.

MySQL root-wachtwoord opnieuw instellen

Er zijn veel vragen van MySQL-gebruikers over "Hoe het MySQL-rootwachtwoord opnieuw in te stellen". Als je een root-wachtwoord had ingesteld maar dit helaas uit het oog bent verloren, dan zal deze tutorial van dit artikel je begeleiden bij het resetten van het root-wachtwoord op zowel Linux als Windows.

Vereisten

  • Bestaande MySQL-database
  • Beheerdersrechten op de pc die de MySQL-database host
  • Toegang tot Windows- of Linux-server met MySQL
  • Opdrachtregelinterface of terminaltoegang
  • Een teksteditor. (Maak je geen zorgen, want Windows-gebruikers hebben Kladblok standaard op hun computers geïnstalleerd, terwijl Linux-gebruikers vim vooraf hebben geïnstalleerd).

Als je eenmaal aan alle genoemde vereisten hebt voldaan, gaan we verder en leren we hoe je het MySQL-rootwachtwoord kunt resetten of wijzigen.

We zullen dit proces op twee fronten doen:

  1. Hoe het MySQL-rootwachtwoord in Linux opnieuw in te stellen
  2. Het MySQL-rootwachtwoord opnieuw instellen in Windows

1. Hoe het MySQL-rootwachtwoord opnieuw in te stellen in Linux

Stap 1:Log in op MySQL

Wanneer u opstart in uw Linux-besturingssysteem, is het essentieel om in te loggen met dezelfde gebruiker die gewoonlijk MySQL gebruikt. Dit is cruciaal om fouten te voorkomen, zoals het maken van bestanden die eigendom zijn van de rootgebruiker, die schade aan uw systeem kunnen veroorzaken. U kunt echter net zo goed inloggen als rootgebruiker zodra u uw MySQL-server start. Om dit te doen, moet u ervoor zorgen dat u MySQL start met de onderstaande syntaxis.

user=fosslinux

Stap 2:Het .pid-bestand vinden dat door de MySQL-service wordt gebruikt

De volgende stap is het lokaliseren van het .pid-bestand. In de meeste Linux-systemen worden ze op deze locatie opgeslagen:

/var/lib/mysql or /var/run/mysqld/ or /usr/local/mysql/data/. 

Aangezien niet alle Linux-systemen hetzelfde zijn, kunt u elk van de hierboven genoemde paden uitproberen en kijken of u het bestand kunt vinden. Om het bestand snel te vinden, kunt u uw zoekopdracht verfijnen tot bestanden die beginnen met mysqld (of je hostnaam) en eindigend met .pid.

Opmerking: Zoeken in het bestand zal het proces vereenvoudigen; daarom raden we je aan het uit te proberen.

Zodra u het bestand hebt gevonden, gaat u verder met de volgende stap

Stap 3:Het mysqld / .pid-proces uitschakelen

Voordat we een nieuw root-wachtwoord kunnen resetten of aanmaken, moeten we eerst de MySQL-server stoppen. Dit kan gedaan worden door de terminal te openen en de onderstaande opdrachtregel uit te voeren:

kill `cat /mysql-data-directory/host_name.pid`

Opmerking: Vervang de mysql-data-directory/host_name.pid met de bestandsnaam die we in stap 2 hebben gevonden. Het is ook van vitaal belang om het volledige bestandspad op te geven om fouten te voorkomen.

Aanvullende tip: Zorg er altijd voor dat u de back-tick-toets gebruikt in plaats van een enkele aanhalingstekens-toets. De back-tick-toets bevindt zich op de meeste computers boven de tab-toets en vóór de ene numerieke toets.

Stap 4:Een nieuw root-wachtwoordbestand maken

Nu is het tijd om uw favoriete teksteditor te openen. Voor ons geval zullen we de Vim-teksteditor gebruiken. Open de terminal met de sneltoets CTRL + ALT + T en voer de onderstaande opdracht uit:

sudo vim mysql-init

Opmerking:als u een foutmelding krijgt na het uitvoeren van de bovenstaande opdracht, voer dan deze opdracht uit om door te gaan met de andere processen:

sudo apt install vim

Voeg nu de onderstaande regel toe aan het bestand:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';

Opmerking: Wanneer u de bovenstaande regel handmatig in de terminal typt, vergeet dan niet om alle puntkomma's en enkele aanhalingstekens op te nemen. Vervang ook het "NieuwWachtwoord ” zin met het nieuwe wachtwoord dat u wilt gebruiken. Zorg er ten slotte voor dat u een sterk en veilig wachtwoord gebruikt of lees hier hoe u een sterk willekeurig wachtwoord op Linux kunt genereren.

De bovenstaande opdracht werkt alleen op de hostcomputer die u gebruikt bij het uitvoeren van de opdracht. Als u echter van plan bent om verbinding te maken met een ander systeem, wordt aanbevolen om de localhost te vervangen door de relevante of liever geschikte hostnaam om de opdracht te laten werken. Als u dit niet doet, zult u fouten tegenkomen.

Nadat u het nieuwe bestand aan uw teksteditor heeft toegevoegd, slaat u het op in:

 home/mysql-init.

Stap 5:De MySQL-server opnieuw opstarten en het nieuw gemaakte wachtwoord toepassen

Het is tijd om de wijzigingen die we hebben aangebracht in ons nieuw gemaakte wachtwoord toe te passen. Eerst zullen we de MySQL-server opnieuw opstarten door de onderstaande opdracht in de terminal uit te voeren:

mysqld --init-file=/home/mysql-init &

Deze opdracht start MySQL en past het tekstbestandswachtwoord toe dat we in de vorige stap hebben gemaakt. Afhankelijk van de methode die u gebruikt om uw server te starten, moet u mogelijk andere opties toevoegen, zoals –defaults-file vóór de init-opdracht.

Nadat u het nieuw gemaakte wachtwoord hebt toegepast en de MySQL-server opnieuw hebt opgestart, is het tijd om op te ruimen. We zullen dit doen door in te loggen op uw MySQL-server als rootgebruiker en te verifiëren dat het wachtwoord dat we hebben aangemaakt echt werkt. Zodra u hebt bevestigd dat het bestand goed werkt, gaat u verder en verwijdert u het bestand dat we in stap 4 hierboven hebben gemaakt.

2. Het MySQL-rootwachtwoord opnieuw instellen in Windows

Als u een Windows-gebruiker bent en graag wilt weten hoe u uw MySQL-rootwachtwoord op Windows opnieuw instelt, lees dan dit artikel tot het einde.

Stap 1:De MySQL-server stoppen.

Voordat u de MySQL-server stopt, moet u controleren of u bent aangemeld als beheerder.

  • Druk op de Win + R-toetsen op Windows om het dialoogvenster Uitvoeren te starten van het type:
services.msc
  • Klik vervolgens op OK.
  • Scrol omlaag door de lijst met services en zoek de MySQL-service. Klik er met de rechtermuisknop op en selecteer vervolgens de optie Stoppen zoals weergegeven in de onderstaande afbeelding:

Stap 2:Open je favoriete teksteditor

Ter illustratie gebruiken we de standaard Kladblok-teksteditor. Raak echter niet in paniek als u een andere teksteditor heeft, aangezien de processen vergelijkbaar zijn.

  • Klik nu op het menu Start en zoek naar Kladblok. Klik erop om te starten.

U kunt ook dit pad gebruiken om Kladblok te vinden:menu>Windows-accessoires>Kladblok.

Stap 3:Een nieuw wachtwoordtekstbestand maken met het wachtwoordcommando

Kopieer en plak de onderstaande syntaxis in de teksteditor om fouten tijdens het handmatig typen te voorkomen:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';

Zorg ervoor dat, net als voor Linux, de puntkomma en de enkele aanhalingstekens behouden blijven en vervang het NieuwWachtwoord zin met het nieuwe wachtwoord dat u op uw MySQL wilt gebruiken.

Klik op de optie Bestand en vervolgens op Opslaan als om het wachtwoord van het tekstbestand op te slaan in de root van uw harde schijf. Sla het bestand op als mysql-init.txt.

Bijgevolg kan de opdracht localhost alleen wachtwoordwijzigingen aanbrengen op uw systeem. Als u daarom van plan bent het wachtwoord op een ander systeem, zoals via het netwerk, te wijzigen, vervang dan de localhost door de juiste hostnaam voor het andere systeem.

Stap 4:start CMD (opdrachtprompt)

  • Klik op de toetsen Ctrl + Shift + Esc op uw toetsenbord
  • Selecteer bestandsmenu en voer een nieuwe taak uit
  • Typ cmd.exe en selecteer het selectievakje Uitvoeren als beheerder
  • Klik op OK om een ​​opdrachtprompt met beheerdersrechten te starten.

Stap 5:MySQL Server herstarten en het nieuwe configuratiebestand toepassen

  • Navigeer met behulp van de opdrachtprompt naar de MySQL-directory:
cd C:\Program Files\MySQL\MySQL Server 8.0\bin
  • Voer vervolgens het volgende commando in:
mysqld --init-file=C:\\mysql-init.txt

Opmerking: Houd er rekening mee dat er twee backslashes zijn vóór de mysql-init snel. Trouwens, als je een andere naam hebt gebruikt dan de naam die we in stap 2 hierboven ter illustratie hebben gebruikt, dan moet je die naam direct na de twee backslashes gebruiken zonder spaties.

Zodra dit is voltooid, kunt u zich nu als rootgebruiker aanmelden bij uw MySQL met het nieuw gemaakte wachtwoord.

Zorg ervoor dat u dubbel controleert om er zeker van te zijn dat het nieuwe wachtwoord foutloos werkt. Ga na bevestiging verder en verwijder het mysql-init.txt-bestand dat we in onze C:\-directory hebben opgeslagen.

Algemene instructies voor het opnieuw instellen van het MySQL-rootwachtwoord

De voorgaande secties hebben uitgebreide instructies gegeven voor het opnieuw instellen van MySQL-rootwachtwoorden voor Linux en Windows. Als alternatief kunt u, wanneer u een platform gebruikt, de MySQL-client gebruiken om het wachtwoord opnieuw in te stellen. Het is echter van vitaal belang op te merken dat deze methode minder veilig is in vergelijking met de voorgaande methoden.

Volg de onderstaande stappen om de MySQL-client te gebruiken:

1. De eerste stap is om de MySQL-server te stoppen. Na het stoppen, herstart het met de onderstaande optie:

--skip-grant-tables

Met deze optie kan iedereen verbinding maken zonder wachtwoord, maar met alle privileges, en accountbeheerverklaringen zoals ALTER USER worden uitgeschakeld en STEL WACHTWOORD IN.

Deze optie wordt als onveilig beschouwd omdat als de server begint met de –skip-grant-tables optie, netwerk overslaan wordt ingeschakeld door externe verbindingen uit te schakelen.

2. Maak nu verbinding met de MySQL-server door de onderstaande opdracht uit te voeren:

mysql

Opmerking: er is geen wachtwoord vereist bij het herstarten van de MySQL-server met behulp van de MySQL-client, aangezien de server is gestart met de –skip-grant-tables .

3. Voer nu in de MySQL-client de onderstaande opdracht uit om de server te vertellen de toekenningstabellen opnieuw te laden. Hierdoor kunnen de accountbeheeroverzichten die eerder waren gestopt weer werken:

mysql> FLUSH PRIVILEGES;

Voer na het uitvoeren van de opdracht de opdracht ALTER USER uit om het wachtwoord te wijzigen. Vervang de MyNewPass , met het nieuwe wachtwoord dat u wilt gebruiken.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

Opmerking: Om het root-wachtwoord voor een ander systeem te wijzigen, moet u ervoor zorgen dat u de localhost wijzigt met de hostnaam van het systeem.

Nu kunt u als rootgebruiker verbinding maken met uw MySQL-server met behulp van het wachtwoord dat we hebben gemaakt. Stop dan en herstart de server normaal zonder de –skip-grant-tables opties en zonder de variabele voor het overslaan van netwerken in te schakelen.

Dat is alles wat u met succes uw MySQL-rootwachtwoord opnieuw hebt ingesteld.

Conclusie

Als je eerder een root-wachtwoord aan MySQL had toegewezen maar dit bent vergeten, kun je dit opnieuw instellen door een nieuw wachtwoord aan je MySQL toe te wijzen, zoals in dit artikel wordt getoond.

Opmerking: MySQL vereist geen root-wachtwoord om verbinding te maken. Het nadeel van het niet toewijzen van een root-wachtwoord aan uw MySQL is echter dat het onveilig is en dat u uw waardevolle spullen kunt verliezen. Als je dus nog nooit een root-wachtwoord voor je MySQL hebt ingesteld, raden we je ten zeerste aan de bovenstaande stappen te volgen om er een te maken en je gegevens en informatie te beveiligen.


  1. SQL Server 2008:hoe verleen ik rechten aan een gebruikersnaam?

  2. verander de kolom voor het neerzetten van tabellen in de Oracle-database

  3. 3 manieren om het jaar uit een datum te extraheren in SQL Server (T-SQL)

  4. Voeg de ordinale indicator toe aan een datum in Oracle