Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 14051|Svar: 0

[Kilde] MySQL Forgot Password Recovery Password Implementation Metode

[Kopier link]
Opslået på 06/02/2015 16.11.04 | | |

Mysql5.1 admin-adgangskodebruddet slutter her.
1. Send en kill-kommando til mysqld-serveren for at slå mysqld-serveren fra (ikke kill -9), og filen, der gemmer proces-ID'et, ligger normalt i den mappe, hvor MYSQL-databasen er placeret.  
killall -TERM mysqld  
Du skal være root-bruger af UNIX eller tilsvarende på den SERVER, du kører, for at gøre dette.  
2. Brug parameteren '--skip-grant-tables' til at starte mysqld. (/usr/bin/safe_mysqld --skip-grant-tables under LINUX, c:\mysql\bin\mysqld --skip-grant-tables under windows)  

3. Log derefter ind på MySQLD Server uden adgangskode,  
>brug MySQL  
>opdater brugersæt password=password("new_pass") hvor user="root";  
>Flush-privilegier;  
。 Du kan også gøre dette: 'mysqladmin -h hostname -u brugeradgangskode 'new password''.  

4. Indlæs tilladelsestabel: 'mysqladmin -h hostname flush-privileges' eller brug SQL-kommandoen 'FLUSH PRIVILEGES'.  
5.killall -TERM mysqld  
6. Log ind med den nye adgangskode  

Rettelse: Her er, hvad jeg faktisk gør under Windows  
1. Luk den kørende MySQL.  
2. Åbn et DOS-vindue og gå til mysql\bin-mappen.  
3. Skriv mysqld-nt --skip-grant-tables i enter. Hvis der ikke er nogen promptbesked, så ja.  
4. Åbn et andet DOS-vindue (fordi DOS-vinduet lige nu ikke længere kan flyttes) og gå til mysql\bin-mappen.  
5. Indtast MySQL enter, hvis det lykkes, vil MySQL-prompten > vises  
6. Forbind til tilladelsesdatabasen >brug MySQL; (> er den oprindelige prompt, glem ikke det sidste semikolon)  
6. Skift adgangskode: > opdatere brugerindstilling adgangskode=adgangskode("123456") hvor bruger="rod"; (Glem ikke det sidste semikolon)  
7. Opfriskningstilladelser (påkrævet trin) >flush-rettigheder;  
8. Udgang > \q  
9. Log ud af systemet, indtast så MySQL, åbn MySQL og log ind 123456 med brugernavnet root og den nye adgangskode, du lige har sat ind.  

Det siges, at man direkte kan ændre brugertabelfilen:  
Luk MySQL, åbn Mysql\data\mysql på Windows, der er tre filer: user.frm, user. MYD, bruger. MYI finder en MySQL, der kender adgangskoden, erstatter de tilsvarende tre filer, og hvis brugertabelstrukturen ikke er ændret, vil som regel ingen ændre den, erstatte brugeren. MYD er nok.  
Du kan også redigere brugeren. MYD, find en hexadecimal editor, UltraEdit har denne funktion. Luk MySQL og åbn brugeren. MYD。 Skift de otte tegn efter roden af brugernavnet til 565491d704013245, og den nye adgangskode er 123456. Eller ændre deres tilsvarende hexadecimale tal (til venstre svarer et tegn til to tal) til 00 02 02 02 02 02 02 02 02, hvilket er en tom adgangskode, og du vil se en stjerne * på højre side af editoren, som ligner et decimalpunkt. Genåbn MySQL og indtast root-koden og din nye adgangskode.
Jeg skal gøre noget for at indtaste mssql i dag, fordi det blev installeret for længe siden, så jeg glemte adgangskoden til SA, selvom man kan indtaste med Windows-autentificering, men hvis man bruger php til at forbinde til mssql, virker det ikke, så jeg googlede det og fandt en løsning.

Gå ind med Windows-godkendelse, så
Indtast følgende kommando og udfør:
exec sp_password null, 'newpass', 'sa'

eksempel
A. Ændr din loginadgangskode, hvis du ikke har den oprindelige adgangskode
Eksemplet nedenfor ændrer adgangskoden til at logge ind på Victoria til 123
EXEC sp_password NULL,'123','sa'

B. Skift din adgangskode
Følgende eksempel ændrer adgangskoden til login til Victoria fra 123 til 456
EXEC sp_password '123', '456'

Et andet problem, jeg har fundet, er, at autentificeringsmekanismen for Windows og SQL Server er lidt forskellig
Windows-autentificering

Resultat for indlogning af serveradresse
127.0.0.1 ok
localhost forkert
. Ok

SQL Server-autentificering

Resultat for indlogning af serveradresse
127.0.0.1 ok
localhost forkert
. forkert


Skriv også ned, hvordan du henter den glemte MySQL-adgangskode
Hvis MySQL kører,
Dræb det først: killall -TERM mysqld (hvis det er Windows, så ring direkte til procesmanageren og afslut det)
For at starte MySQ i fejlsikret tilstand:
/usr/bin/safe_mysqld --skip-grant-tables &
(Windows MySQL installationsdisk /mysql/bin/safe_mysqld --skip-grant-tables )
Du kan indtaste MySQL uden adgangskode.
Og så er der
>brug MySQL
>opdater brugersæt password=password("new_pass") hvor user="root";
>Flush-privilegier;
Sluk MySQL igen og start MySQL på den normale måde.




Tidligere:C# Dynamisk Tilstandsreference DLL-metode (Genoptryk)
Næste:Intrusion Penetration: Anvendelse af HTTP-headers
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com