Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 14051|Svar: 0

[Källa] MySQL Forgot lösenordsåterställningsmetod

[Kopiera länk]
Publicerad på 2015-02-06 16:11:04 | | |

Mysql5.1-administratörslösenordsknäcket slutar här.
1. Skicka ett kill-kommando till mysqld-servern för att stänga av mysqld-servern (inte killa -9), och filen som lagrar process-ID finns vanligtvis i katalogen där MYSQL-databasen finns.  
killall -TERM mysqld  
Du måste vara root-användare av UNIX eller motsvarande på SERVERN du kör för att göra detta.  
2. Använd parametern '--skip-grant-tables' för att starta mysqld. (/usr/bin/safe_mysqld --skip-grant-tables under LINUX, c:\mysql\bin\mysqld --skip-grant-tables under Windows)  

3. Logga sedan in på MySQLD Server utan lösenord,  
>använd MySQL  
>uppdatera användarinställningen lösenord=lösenord("new_pass") där användar="root";  
>Flush-privilegier;  
。 Du kan också göra så här: 'mysqladmin -h hostname -u användarlösenord 'nytt lösenord''.  

4. Ladda behörighetstabell: 'mysqladmin -h hostname flush-privileges' eller använd SQL-kommandot 'FLUSH PRIVILEGES'.  
5.killall -TERM mysqld  
6. Logga in med det nya lösenordet  

Rättelse: Här är vad jag faktiskt gör under Windows  
1. Stäng den körande MySQL.  
2. Öppna ett DOS-fönster och gå till mysql\bin-katalogen.  
3. Skriv mysqld-nt --skip-grant-tables i enter. Om det inte finns något promptmeddelande, så ja.  
4. Öppna ett annat DOS-fönster (eftersom DOS-fönstret just nu inte längre kan flyttas) och gå till mysql\bin-katalogen.  
5. Ange MySQL enter, om lyckas visas MySQL-prompten >  
6. Koppla upp dig mot behörighetsdatabasen >använd MySQL; (> är originalprompten, glöm inte sista semikolon)  
6. Byt lösenord: > uppdatera användaren sätter lösenord=lösenord("123456") där användaren="root"; (Glöm inte det sista semikolon)  
7. Uppdateringsbehörigheter (nödvändigt steg) >rensningsbehörigheter;  
8. Utgång > \q  
9. Logga ut från systemet, ange sedan MySQL, öppna MySQL och logga in 123456 med användarnamnet root och det nya lösenord du just satt.  

Det sägs att du kan ändra användartabellsfilen direkt:  
Stäng MySQL, öppna Mysql\data\mysql på Windows, det finns tre filer: user.frm, user. MYD, användare. MYI hittar en MySQL som känner till lösenordet, ersätter motsvarande tre filer, om användartabellstrukturen inte har ändrats brukar ingen ändra den, ersätta användaren. MYD duger.  
Du kan också redigera användaren. MYD, hitta en hexadecimal redigerare, UltraEdit har denna funktion. Stäng MySQL och öppna användaren. MYD。 Byt de åtta tecknen efter användarnamnets rot till 565491d704013245, och det nya lösenordet är 123456. Eller ändra deras motsvarande hexadecimala tal (till vänster motsvarar ett tecken två siffror) till 00 02 02 02 02 02 02 02, vilket är ett tomt lösenord, och du kommer att se en asterisk * på höger sida av redigeraren, vilket ser ut som en decimalpunkt. Öppna MySQL igen och ange roten och ditt nya lösenord.
Jag har något att göra för att ange mssql idag, eftersom det installerades för länge sedan, så jag glömde lösenordet till SA, även om man kan mata in med Windows-autentisering, men om du använder php för att ansluta till mssql fungerar det inte, så jag googlade och hittade en lösning.

Gå in med Windows-autentisering då
Ange följande kommando och utför:
exec sp_password null, 'newpass', 'sa'

exempel
A. Byt ditt inloggningslösenord om du inte har det ursprungliga lösenordet
Exemplet nedan ändrar lösenordet för att logga in i Victoria till 123
EXEC sp_password NULL, '123', 'sa'

B. Byt lösenord
Följande exempel ändrar lösenordet för inloggning till Victoria från 123 till 456
EXEC sp_password '123', '456'

Ett annat problem jag hittade är att autentiseringsmekanismen för Windows och SQL Server är lite annorlunda
Windows-autentisering

Serveradressinloggningsresultat
127.0.0.1 ok
localhost fel
. Okej

SQL Server-autentisering

Serveradressinloggningsresultat
127.0.0.1 ok
localhost fel
. fel


Dokumentera också hur du hämtar det bortglömda mysql-lösenordet
Om MySQL körs,
Döda det först: killall -TERM mysqld (om det är Windows, ring processchefen direkt och avsluta det)
För att starta MySQ i felsäkert läge:
/usr/bin/safe_mysqld --skip-grant-tables &
(Windows MySQL installationsdisk /mysql/bin/safe_mysqld --skip-grant-tables )
Du kan ange MySQL utan lösenord.
Och sedan finns det
>använd MySQL
>uppdatera användarinställningen lösenord=lösenord("new_pass") där användar="root";
>Flush-privilegier;
Stäng av MySQL igen och starta MySQL på vanligt sätt.




Föregående:C# Dynamisk tillståndsreferens DLL-metoden (Återtryck)
Nästa:Intrusion Penetration: Tillämpning av HTTP-headers
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com