Łamanie haseł administratora Mysql5.1 kończy się tutaj. 1. Wyślij polecenie kill do serwera mysqld, aby wyłączyć serwer mysqld (nie kill -9), a plik przechowujący identyfikator procesu zwykle znajduje się w katalogu, w którym znajduje się baza danych MYSQL. killall -TERM mysqld Musisz być użytkownikiem rootowym UNIX-a lub odpowiednikiem na SERWERZE, który uruchamiasz, aby to zrobić. 2. Użyj parametru '--skip-grant-tables', aby uruchomić mysqld. (/usr/bin/safe_mysqld --skip-grant-tables pod LINUX, c:\mysql\bin\mysqld --skip-grant-tables w Windows)
3. Następnie zaloguj się do serwera MySQLD bez hasła, >użyj mysql >aktualizuj user set password=password("new_pass"), gdzie user="root"; > przywileje wypłukać; 。 Możesz też zrobić to: 'mysqladmin -h hostname -u user password 'new password'.
4. Załaduj tablicę uprawnień: 'mysqladmin -h hostname flush-privileges' lub użyj polecenia SQL 'FLUSH PRIVILEGES'. 5.killall -TERM mysqld 6. Zaloguj się za pomocą nowego hasła
Poprawka: Oto, co faktycznie robię w Windowsie 1. Zamknij działający MySQL. 2. Otwórz okno DOS i przejdź do katalogu mysql\bin. 3. Wpisz mysqld-nt --skip-grant-tables do enter. Jeśli nie ma komunikatu prompt, to tak. 4. Otwórz kolejne okno DOS (ponieważ okno DOS właśnie nie może być już przesunięte) i przejdź do katalogu mysql\bin. 5. Wprowadź MySQL, jeśli się powiedzie, pojawi się > MySQL 6. Połączyć się z bazą uprawnień >użyj mysql; (> to oryginalny prompt, nie zapomnij o ostatnim średniku) 6. Zmień hasło: > zaktualizuj user ustaw password=password("123456"), gdzie user="root"; (Nie zapomnij o ostatnim średniku) 7. Odśwież uprawnienia (wymagany krok) >wypłuń uprawnienia; 8. Wyjście > \q 9. Wyloguj się z systemu, następnie wejdź, otwórz MySQL i zaloguj się 123456 używając nazwy użytkownika rootowej i nowego hasła, które właśnie ustaliłeś.
Mówi się, że można bezpośrednio modyfikować plik tabeli użytkownika: Zamknij MySQL, otwórz Mysql\data\mysql na Windows, są trzy pliki user.frm, user. MYD, użytkowniku. MYI znajduje MySQL, który zna hasło, zastępuje odpowiadające mu trzy pliki; jeśli struktura tabeli użytkownika nie została zmieniona, zazwyczaj nikt jej nie zmieni, zastąpi użytkownika. MYD wystarczy. Możesz też edytować użytkownika. MYD, znajdź edytor szesnastkowy, UltraEdit ma tę funkcję. Zamknij MySQL i otwórz użytkownika. MYD。 Zmień osiem znaków po korzeniu nazwy użytkownika na 565491d704013245, a nowe hasło to 123456. Albo zmień odpowiadające im liczby szesnastkowe (po lewej jeden znak odpowiada dwóm cyfram) na 00 02 02 02 02 02, co jest pustym hasłem, i zobaczysz gwiazdkę * po prawej stronie edytora, która wygląda jak przecink. Otwórz ponownie MySQL i wpisz root oraz nowe hasło. Dziś muszę coś zrobić, żeby wejść do mssql, bo zostało zainstalowane dawno temu, więc zapomniałem hasła do SA, chociaż można wejść przez uwierzytelnianie Windows, ale jeśli używasz php do połączenia z mssql, to nie zadziała, więc wygooglowałem i znalazłem rozwiązanie.
Wejdź wtedy z uwierzytelnieniem Windows Wprowadź następujące polecenie i wykonaj: Exec sp_password null, 'newpass', 'sa'
przykład A. Zmień hasło do logowania, jeśli nie masz oryginalnego hasła Poniższy przykład zmienia hasło do logowania się do Victorii na 123 EXEC sp_password NULL, '123', 'sa'
B. Zmień hasło Poniższy przykład zmienia hasło do logowania się do Victoria z 123 na 456 EXECUTIVE sp_password '123', '456'
Innym problemem, który zauważyłem, jest to, że mechanizm uwierzytelniania dla Windows i SQL Server jest nieco inny Uwierzytelnianie Windows
Wynik logowania na adres serwera 127.0.0.1 ok localhost błędny . Ok
Uwierzytelnianie SQL Server
Wynik logowania na adres serwera 127.0.0.1 ok localhost błędny . źle
Zapisz też, jak odzyskać zapomniane hasło mysql Jeśli MySQL działa, Najpierw zabij: killall -TERM mysqld (jeśli to Windows, bezpośrednio zadzwoń do menedżera procesów i zakończ to) Aby rozpocząć MySQ w trybie awaryjnym:
/usr/bin/safe_mysqld --skip-grant-tables & (Windows MySQL instalacyjny dysk /mysql/bin/safe_mysqld --skip-grant-tables ) Możesz wejść do MySQL bez hasła. A potem jest >użyj mysql >aktualizuj user set password=password("new_pass"), gdzie user="root"; > przywileje wypłukać; Ponownie zabij MySQL i zacznij MySQL w normalny sposób.
|