Wie erhalte ich meinen MySQL-Benutzernamen und mein Passwort?

  • Ich habe meinen MySQL-Benutzernamen und mein Passwort verloren. Wie kann ich es abrufen?

    07 August 2008
    Tim Post
9 answers
  • Stoppen Sie den MySQL-Prozess.

    Starten Sie den MySQL-Prozess mit der Option --skip-grant-tables.

    Starten Sie den MySQL-Konsolen-Client mit der Option -u root.

    Listet alle Benutzer auf;

     SELECT * FROM mysql.user;
     

    Passwort zurücksetzen;

     UPDATE mysql.user SET Password=PASSWORD('[password]') WHERE User='[username]';
     

    Aber VERGESSEN SIE NICHT , um

    Stoppen Sie MySQL process

    Starten Sie den MySQL-Prozess normal (dh ohne die Option --skip-grant-tables)

    wenn du fertig bist. Andernfalls könnte die Sicherheit Ihrer Datenbank beeinträchtigt werden.

    07 August 2008
    Xenph Yan
  • Ihr Benutzerkennwort ist leider nicht abrufbar. Es wurde mit einem Einweghash gehasht, der, wenn Sie es nicht wissen, irreversibel ist. Ich empfehle Xenph Yan oben und erstelle ein neues.

    Sie können auch die folgende Prozedur aus das Handbuch zum Zurücksetzen des Kennworts für alle MySQL-Konten root unter Windows:

    1. Melden Sie sich als Administrator bei Ihrem System an.
    2. Stoppen Sie den MySQL-Server, falls er ausgeführt wird. Gehen Sie für einen Server, der als Windows-Dienst ausgeführt wird, zu dem Dienste-Manager:

    Startmenü - & gt ; Systemsteuerung - & gt; Verwaltungstools - & gt; Dienste

    Suchen Sie dann den MySQL-Dienst in der Liste und stoppen Sie ihn. Wenn Ihr Server nicht als Dienst ausgeführt wird, müssen Sie möglicherweise den Task-Manager verwenden, um das Anhalten zu erzwingen.

    1. Erstellen Sie eine Textdatei und fügen Sie die folgenden Anweisungen ein. Ersetzen Sie das Kennwort durch das Kennwort, das Sie verwenden möchten.

       UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
      FLUSH PRIVILEGES;
       

      Das UPDATE und die Anweisungen FLUSH müssen in eine einzige Zeile geschrieben werden. Die Anweisung UPDATE setzt das Kennwort für alle vorhandenen Root-Konten zurück, und die Anweisung FLUSH weist den Server an, die Grant-Tabellen in den Speicher zu laden.

    2. Speichern Sie die Datei. In diesem Beispiel heißt die Datei C: \ mysql-init.txt.
    3. Öffnen Sie ein Konsolenfenster, um zur Eingabeaufforderung zu gelangen:

      Startmenü - & gt; Ausführen - & gt; cmd

    4. Starten Sie den MySQL Server mit der speziellen Option - init-file :

       C:\> C:\mysql\bin\mysqld-nt --init-file = C:\mysql-init.txt
       

      Wenn Sie MySQL an einem anderen Ort als C: \ mysql installiert haben, passen Sie den Befehl entsprechend an .

      Der Server führt beim Start den Inhalt der Datei aus, die mit der Option - init-file bezeichnet wird, und ändert dabei jedes r

    16 January 2015
    MonicYella Chalamala
  • Eine Verbesserung der nützlichsten Antwort hier:

    1] Der mysql-Server muss nicht neu gestartet werden.
    2] Sicherheitsbedenken für einen MySQL-Server, der mit einem Netzwerk verbunden ist

    Der MySQL-Server muss nicht neu gestartet werden.

    Verwenden Sie FLUSH PRIVILEGES; nach der Update-Anweisung mysql.user für die Kennwortänderung.

    Die FLUSH-Anweisung weist den Server an, die Grant-Tabellen erneut in den Arbeitsspeicher zu laden, damit er die Kennwortänderung bemerkt.

    Mit --skip-grant-options kann jeder eine Verbindung ohne Kennwort und herstellen mit allen Privilegien. Da dies nicht sicher ist, möchten Sie möglicherweise

    - skip-grant-tables in Verbindung mit - verwenden. -skip-networking , um zu verhindern, dass Remote-Clients eine Verbindung herstellen.

    von: reference: resetting-permissions-generic

    09 January 2012
    ThinkingMonkey
  • Während Sie ein MySQL-Kennwort nicht ohne Bruteforcing direkt wiederherstellen können, gibt es möglicherweise eine andere Möglichkeit - wenn Sie MySQL Workbench für die Verbindung zur Datenbank verwendet haben und die Anmeldeinformationen im "Tresor" gespeichert haben sind golden.

    Unter Windows werden die Anmeldeinformationen in % APPDATA% \ MySQL \ Workbench \ workbench_user_data.dat gespeichert - mit CryptProtectData (ohne zusätzliche Entropie) . Das Entschlüsseln ist einfach peasy:

     std::vector<unsigned char> decrypt(BYTE *input, size_t length) {
        DATA_BLOB inblob { length, input };
        DATA_BLOB outblob;
    
        if (!CryptUnprotectData(&inblob, NULL, NULL, NULL, NULL, CRYPTPROTECT_UI_FORBIDDEN, &outblob)) {
                throw std::runtime_error("Couldn't decrypt");
        }
    
        std::vector<unsigned char> output(length);
        memcpy(&output[0], outblob.pbData, outblob.cbData);
    
        return output;
    }
     

    Oder Sie können dies DonationCoder-Thread für die ausführbare + ausführbare Datei einer Quick-and-dirty-Implementierung.

    07 February 2016
    Markus SafarMHop
  • Wenn Sie Root-Zugriff auf den Server haben, auf dem mysql ausgeführt wird, sollten Sie den mysql-Server mit diesem Befehl stoppen.

     sudo service mysql stop
     

    Starten Sie jetzt mysql mit diesem Befehl

     sudo /usr/sbin/mysqld --skip-grant-tables  --skip-networking &
     

    Jetzt können Sie sich mit an mysql anmelden. p>

     sudo mysql
    FLUSH PRIVILEGES;
    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
     

    Eine vollständige Anleitung finden Sie hier http://www.techmatterz.com/recover-mysql-root-password/

    22 January 2016
    Sajjad Ashraf
  • Melden Sie sich bei MySQL von Windows cmd mit dem vorhandenen Benutzer an:

    mysql -u Benutzername -p
    Geben Sie das Passwort ein: ****

    Führen Sie dann den folgenden Befehl aus:

     mysql> SELECT * FROM mysql.user;
     

    Danach müssen Sie das verschlüsselte md5-Kennwort für den entsprechenden Benutzer kopieren und es gibt mehrere Online-Kennwort-entschlüsselte Anwendungen im Web. Verwenden Sie dieses Entschlüsselungskennwort und verwenden Sie dieses, um sich beim nächsten Mal anzumelden. Oder aktualisieren Sie das Benutzerkennwort mithilfe des fließenden Befehls:

     mysql> UPDATE mysql.user SET Password=PASSWORD('[password]') WHERE User='[username]';
     

    Melden Sie sich dann mit dem neuen Passwort und dem neuen Benutzer an.

    07 February 2016
    Markus SafarMHop
  • Ohne Ausfallzeit ausführen

    Führen Sie den folgenden Befehl im Terminal aus, um eine Verbindung zum DBMS herzustellen (Sie benötigen Root-Zugriff):

     sudo mysql -u root -p;
     

    Laufaktualisierungskennwort des Zielbenutzers ausführen (für meinen Beispielbenutzernamen ist mousavi und das Kennwort muss 123456 sein):

     UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE user='mousavi';  
     

    An diesem Punkt müssen Sie einen Flush ausführen, um die Änderungen zu übernehmen:

     FLUSH PRIVILEGES;
     

    Fertig! Sie haben es ohne Anhalten oder Neustarten des MySQL-Dienstes getan.

    10 March 2018
    S.M.Mousavi
  • Eine strikte, logische, computerwissenschaftliche Interpretation der Op-Frage würde bedeuten, dass beide "Wie rufe ich meinen MySQL-Benutzernamen ab" und "Kennwort" - Ich dachte, es könnte für jemanden nützlich sein, sich auch mit der ODER -Interpretation zu befassen. Mit anderen Worten ...

    1) Wie rufe ich meinen MySQL-Benutzernamen ab?

    ODER

    2) Passwort

    Diese letzte Bedingung scheint bereits reichlich gelöst worden zu sein, so dass ich mich nicht damit beschäftige. Das Folgende ist eine Lösung für den Fall "Wie erhalte ich meinen MySQL-Benutzernamen" allein. HIH.

    Um Ihren mysql-Benutzernamen zu finden, führen Sie die folgenden Befehle von der mysql-Shell aus aus:

    SELECT User FROM mysql.user ;

    gibt eine Tabelle aller MySQL-Benutzer aus.

    05 June 2015
    shine
  • Wenn Sie ODBC eingerichtet haben, können Sie das Kennwort aus der ODBC-Konfigurationsdatei erhalten. Dies ist in /etc/odbc.ini für Linux und im Software / ODBC-Ordner in der Registrierung von Windows (es gibt mehrere - es kann einige Jagd erfordern)

    30 October 2017
    samplesize1