Prelomenie administrátorského hesla Mysql5.1 tu končí. 1. Pošlite kill príkaz serveru mysqld na vypnutie servera mysqld (nie kill -9) a súbor, ktorý uchováva ID procesu, je zvyčajne v adresári, kde sa nachádza databáza MYSQL. killall -TERM mysqld Musíte byť root používateľom UNIXu alebo ekvivalentom na SERVERI, ktorý používate, aby ste to mohli urobiť. 2. Použite parameter '--skip-grant-tables' na spustenie mysqld. (/usr/bin/safe_mysqld --skip-grant-tables pod LINUX, c:\mysql\bin\mysqld --skip-grant-tables pod Windows)
3. Potom sa prihlásiť na MySQLD Server bez hesla, > používaj mysql >aktualizovať používateľom nastaviť heslo=heslo("new_pass"), kde user="root"; >vypláchaj privilégiá; 。 Môžete tiež urobiť toto: 'mysqladmin -h hostname -u používateľské heslo 'nové heslo''.
4. Načítajte tabuľku oprávnení: 'mysqladmin -h hostname flush-privileges' alebo použite SQL príkaz 'FLUSH PRIVILEGES'. 5.killall -TERM mysqld 6. Prihláste sa s novým heslom
Oprava: Tu je, čo vlastne robím pod Windows 1. Zatvorte bežiaci MySQL. 2. Otvorte DOS okno a choďte do adresára mysql\bin. 3. Zadajte mysqld-nt --skip-grant-tables do enter. Ak nie je žiadna výzva, tak áno. 4. Otvorte ďalšie DOS okno (pretože okno DOS sa už nedá presunúť) a prejdite do adresára mysql\bin. 5. Zadajte MySQL enter, ak je to úspešné, zobrazí sa MySQL prompt > 6. Pripojiť sa k databáze oprávnení >použiť mysql; (> je pôvodná výzva, nezabudnite na poslednú bodkočiarku) 6. Zmeniť heslo: > aktualizovať používateľom nastaviť password=password("123456"), kde user="root"; (Nezabudnite na poslednú bodkočiarku) 7. Obnoviť oprávnenia (povinný krok) >vyčistiť oprávnenia; 8. Výstup > \q 9. Odhlásiť sa zo systému, potom vstúpiť, otvoriť MySQL a prihlásiť sa 123456 pomocou koreňového používateľského mena a nového hesla, ktoré ste práve nastavili.
Hovorí sa, že môžete priamo upraviť súbor používateľskej tabuľky: Zatvorte MySQL, otvorte Mysql\data\mysql vo Windows, sú tam tri súbory user.frm, user. MYD, používateľ. MYI nájde MySQL, ktorý pozná heslo, nahradí zodpovedajúce tri súbory, ak sa štruktúra používateľských tabuliek nezmenila, zvyčajne ju nikto nezmení, nahradí používateľa. MYD postačí. Môžete tiež upraviť používateľa. MYD, nájdi hexadecimálny editor, UltraEdit má túto funkciu. Zatvorte MySQL a otvorte používateľa. MYD。 Zmeňte osem znakov za koreňom používateľského mena na 565491d704013245 a nové heslo je 123456. Alebo zmeňte ich zodpovedajúce hexadecimálne čísla (vľavo jeden znak zodpovedá dvom číslam) na 00 02 02 02 02 02, čo je prázdne heslo, a na pravej strane editora uvidíte hviezdičku *, ktorá vyzerá ako desatinná čiarka. Znovu otvorte MySQL a zadajte root a nové heslo. Dnes musím niečo vybaviť, ako zadať mssql, pretože bol nainštalovaný už dávno, takže som zabudol heslo k SA, hoci sa dá zadať cez Windows autentifikáciu, ale ak použijete php na pripojenie k mssql, nebude to fungovať, tak som to vygooglil a našiel riešenie.
Potom prejdite s autentifikáciou Windows Zadajte nasledujúci príkaz a vykonať: Exec sp_password null, 'newpass', 'sa'
príklad Odpoveď. Zmeňte svoje prihlasovacie heslo, ak nemáte pôvodné heslo Príklad nižšie mení heslo na prihlásenie do Victorie na 123 EXEC sp_password NULL, '123', 'sa'
B. Zmeňte si heslo Nasledujúci príklad mení heslo na prihlásenie na Victoria z 123 na 456 EXEC sp_password '123', '456'
Ďalším problémom, ktorý som našiel, je, že autentifikačný mechanizmus pre Windows a SQL Server je trochu odlišný Windows autentifikácia
Výsledok prihlásenia na adresu servera 127.0.0.1 ok localhost je nesprávny . ok
Autentifikácia SQL Servera
Výsledok prihlásenia na adresu servera 127.0.0.1 ok localhost je nesprávny . Nesprávne
Tiež zaznamenajte, ako získať zabudnuté heslo do MySQL Ak beží MySQL, Najprv ho zabijte: killall -TERM mysqld (ak je to Windows, priamo zavolajte do správcu procesov a ukončite to) Na spustenie MySQ v núdzovom režime:
/usr/bin/safe_mysqld --skip-grant-tables & (Windows MySQL inštalačný disk /mysql/bin/safe_mysqld --skip-grant-tables ) Môžete zadať MySQL bez hesla. A potom je tu > používaj mysql >aktualizovať používateľom nastaviť heslo=heslo("new_pass"), kde user="root"; >vypláchaj privilégiá; Znovu ukončiť MySQL a spustiť MySQL bežným spôsobom.
|