Het kraken van het Mysql5.1-beheerderswachtwoord eindigt hier. 1. Stuur een kill-commando naar de mysqld-server om de mysqld-server uit te schakelen (niet kill -9), en het bestand dat de proces-ID opslaat staat meestal in de map waar de MYSQL-database zich bevindt. killall -TERM mysqld Je moet de root-gebruiker zijn van UNIX of het equivalent op de SERVER die je draait om dit te doen. 2. Gebruik de parameter '--skip-grant-tables' om mysqld te starten. (/usr/bin/safe_mysqld --skip-grant-tables onder LINUX, c:\mysql\bin\mysqld --skip-grant-tables onder Windows)
3. Log dan in op MySQLD Server zonder wachtwoord, >gebruik mysql >user set password=password("new_pass") bijwerken waarbij user="root"; >Flush-privileges; 。 Je kunt ook dit doen: 'mysqladmin -h hostnaam -u gebruikerswachtwoord 'nieuw wachtwoord''.
4. Laad permissie-tabel: 'mysqladmin -h hostnaam flush-privileges' of gebruik het SQL-commando 'FLUSH PRIVILEGES'. 5.killall -TERM mysqld 6. Log in met het nieuwe wachtwoord
Correctie: Dit is wat ik eigenlijk doe onder Windows 1. Sluit de draaiende MySQL. 2. Open een DOS-venster en ga naar de mysql\bin-map. 3. Typ mysqld-nt --skip-grant-tables in enter. Als er geen promptbericht is, dan wel. 4. Open een ander DOS-venster (omdat het DOS-venster net niet meer verplaatst kan worden) en ga naar de mysql\bin-map. 5. Voer MySQL enter, als dat lukt, verschijnt de MySQL-prompt > 6. Verbind met de machtigingsdatabase >gebruik MySQL; (> de originele prompt is, vergeet de laatste puntkomma niet) 6. Wachtwoord wijzigen: > user set wachtwoord=password("123456") waarbij user="root" wordt bijgewerkt; (Vergeet het laatste puntkomma niet) 7. Verversrechten (vereiste stap) >flush-privileges; 8. Exit > \q 9. Log uit uit het systeem, voer dan MySQL open, en log in 123456 met de gebruikersnaam root en het nieuwe wachtwoord dat je net hebt ingesteld.
Er wordt gezegd dat je het gebruikerstabelbestand direct kunt wijzigen: Sluit MySQL, open Mysql\data\mysql op Windows, er zijn drie bestanden: user.frm, user. MYD, gebruiker. MYI vindt een MySQL die het wachtwoord kent, vervangt de bijbehorende drie bestanden; als de structuur van de gebruikerstabel niet is veranderd, zal meestal niemand deze veranderen, de gebruiker vervangen. MYD is goed. Je kunt de gebruiker ook bewerken. MYD, zoek een hexadecimale editor, UltraEdit heeft deze functie. Sluit MySQL en open user. MYD。 Verander de acht tekens na de wortel van de gebruikersnaam naar 565491d704013245, en het nieuwe wachtwoord is 123456. Of verander hun bijbehorende hexadecimale getallen (links komt één teken overeen met twee cijfers) naar 00 02 02 02 02 02 02 02, wat een leeg wachtwoord is, en je ziet een asterisk * aan de rechterkant van de editor, wat eruitziet als een decimale komma. Open MySQL opnieuw en voer de root en je nieuwe wachtwoord in. Ik moet vandaag iets doen om mssql in te gaan, omdat het lang geleden is geïnstalleerd, dus ik ben het wachtwoord van SA vergeten, hoewel je het kunt invoeren met Windows-authenticatie, maar als je php gebruikt om verbinding te maken met mssql, werkt het niet, dus ik heb het gegoogeld en een oplossing gevonden.
Ga dan naar binnen met Windows-authenticatie Voer het volgende commando in en voer het uit: exec sp_password null, 'newpass', 'sa'
voorbeeld A. Verander je inlogwachtwoord als je het originele wachtwoord niet hebt Het onderstaande voorbeeld verandert het wachtwoord om in te loggen op Victoria naar 123 EXEC sp_password NULL,'123','sa'
B. Verander je wachtwoord Het volgende voorbeeld verandert het wachtwoord voor inloggen op Victoria van 123 naar 456 EXEC sp_password '123', '456'
Een ander probleem dat ik vond is dat het authenticatiemechanisme voor Windows en SQL Server iets anders is Windows-authenticatie
Inlogresultaat van serveradres 127.0.0.1 ok localhost fout . OK
SQL Server-authenticatie
Inlogresultaat van serveradres 127.0.0.1 ok localhost fout . fout
Noteer ook hoe je het vergeten MySQL-wachtwoord kunt terughalen Als MySQL draait, Maak het eerst af: killall -TERM mysqld (als het Windows is, bel dan direct de procesmanager en beëindig het) Om MySQ in de veilige modus te starten:
/usr/bin/safe_mysqld --skip-grant-tables & (Windows MySQL installatieschijf /mysql/bin/safe_mysqld --skip-grant-tables ) Je kunt MySQL invoeren zonder wachtwoord. En dan is er nog >gebruik mysql >user set password=password("new_pass") bijwerken waarbij user="root"; >Flush-privileges; Stop MySQL opnieuw en start MySQL op de normale manier.
|