MySQL Datenbank Server auf Windows installieren

Im zweiten Teil meiner Artikelserie zur Installation einer Web Entwicklungsumgebung beschreibe ich in einer Schritt-für-Schritt Anleitung, wie man den MySQL Datenbank Server auf Windows installieren kann.

Der MySQL Datenbank Server ist der wohl am weitesten verbreitete und in Millionen Web Projekten eingesetzte Open Source Datenbank Server. Es gibt ihn in einer Community Edition, die kostenlos heruntergeladen werden kann und mehrere kommerzielle Versionen, die erweiterte Funktionalitäten und professionellen Support enthalten. Für diese Artikelserie reicht die Installation der Community Edition. Diese kann von der MySQL Webseite heruntergeladen werden. Die neueste Version (Stand: 27.06.2017) ist 5.7.18.

1. Schritt: MySQL Datenbank Server herunterladen

Zum Herunterladen klicken Sie bitte auf den im Screenshot markierten Download Button.

Es gibt verschiedene Wege, MySQL zu installieren. Der einfachste ist wahrscheinlich eine .msi Datei herunterzuladen und über einen Assistenten geleitet zu werden.
Ich wähle jedoch für dieses Tutorial den manuellen Weg. Zum einen ist dieser nicht wesentlich komplizierter und zum anderen lernen Sie dabei einige Zusammenhänge kennen, die Ihnen später nützlich sein könnten.

Auf der nächsten Seite werden Sie aufgefordert, sich mit einem MySQL Account anzumelden oder zu registrieren. Dies ist jedoch nicht zwingend und kann durch klicken auf den Link „No thanks, just start my download.“ umgangen werden.

Es öffnet sich ein Windows Fenster, der den Download ankündigt. Durch klicken des „Speichern“ Buttons wird der Download gestartet. Die Installationsdatei wird auf Ihre Festplatte gespeichert.

2. Schritt: MySQL Datenbank Server installieren

Nach dem Download befindet sich eine ZIP Datei auf Ihrer Festplatte (in meinem Fall heißt sie „mysql-5.7.18-win64.zip“. Bitte entpacken Sie diese Datei in das Verzeichnis c:\amp. Sie erhalten ein neues Unterverzeichnis namens c:\amp\mysql-5.7.18-win64. Benennen Sie dieses nun um nach c:\amp\mysql. Damit ist die Installation auch schon beendet.

3. Schritt: MySQL Datenbank Server konfigurieren

Als nächstes müssen Sie den MySQL Datenbank Server konfigurieren. Auch hierzu sind nicht allzu viele Schritte erforderlich, wie Sie gleich sehen werden.

Zunächst gehen Sie bitte in das Verzeichnis c:\amp\mysql und erstellen eine Kopie der Datei „my-default.ini“ und benennen diese „my.ini“. Öffnen Sie danach diese neue Datei in einem Text Editor. Der Einfachheit halber belassen wir alle bestehenden Zeilen, wie sie sind und fügen am Ende der Datei die folgenden Zeilen hinzu:


# setzen des Basisverzeichnisses = Installationsverzeichnis
basedir = "c:/amp/mysql"
# setzen des Datenverzeichnisses
datadir = "E:/mydata/"

Speichern Sie diese Datei.

Das Basisverzeichnis sagt dem Datenbankserver wo sich die EXE Dateien befinden. Das Datenverzeichnis sollten Sie vom Basisverzeichnis trennen. Ich habe es in meinem Beispiel sogar auf einem anderen Laufwerk abgelegt. Dies ist insofern sinnvoll, da Sie dieses Laufwerk evtl. öfter sichern wollen, als das Systemlaufwerk.

Als nächstes sollten Sie das Verzeichnis c:\amp\mysql\bin (also das Verzeichnis, in dem sich die Binaries befinden) in den Windows PATH eintragen. Dadurch lässt sich die Datei „mysqld.exe“ systemweit unter Windows aufrufen. Warum dies hilfreich ist, sehen wir im nächsten Schritt.

Seit der Version 5.7.7 wird bei einer Windows Installation von MySQL kein Data Directory mehr angelegt. Daher müssen Sie dies nun manuell tun. Öffnen Sie hierzu die Windows Kommandozeile (am schnellsten geht dies mit der Tastenkombination +R, „cmd“ eingeben und ENTER Taste drücken). Vorausgesetzt Sie haben das MySQL bin Verzeichnis, wie oben beschrieben, in den Windowspfad aufgenommen, geben Sie jetzt bitte den folgenden Befehl ein und bestätigen ihn durch Drücken der ENTER Taste.


mysqld --initialize

Der MySQL Server wird für das Konto „root@localhost“ ein Passwort generieren. Dieses Passwort wird als abgelaufen gekennzeichnet, so dass Sie ein neues anlegen müssen, sobald Sie sich am Server das erste Mal anmelden wollen. Innerhalb des data directory erstellt der Server die MySQL System Datenbank und dessen Tabellen.

4. Schritt: MySQL Datenbank Server als Windows Dienst einrichten

Wie bei dem Apache Web Server will ich jetzt auch den MySQL Datenbank Server als Windows Dienst einrichten. Es hat sich in der Praxis als hilfreich erwiesen, es so zu handhaben. Anderenfalls vergisst man gerne einmal den einen oder anderen Server manuell zu starten und wundert sich dann, warum die Webseite nicht funktioniert.

Zum Einrichten eines Dienstes für den MySQL Server unter Windows geben Sie bitte den folgenden Befehl in die Kommandozeile ein:


mysqld --install

Einmal als Windows Dienst eingerichtet, startet dieser beim Start von Windows automatisch. Doch jetzt müssen wir den Dienst einmalig manuell starten. Hierzu geben Sie bitte folgenden Befehl in die Kommandozeile ein:


net start mysql

Sollte der Dienst nicht starten, dann sehen Sie bitte im Error Log nach, ob der Server irgendeine Meldung eingetragen hat, die erklärt, was das Problem ist. Das Error Log befindet sich im MySQL data directory, also in dem Verzeichnis, in welchem sich auch die MySQL Datenbanken befinden (dieses haben Sie in der Konfiguration festgelegt!). Es ist eine Datei mit der Endung „.err“.

Aber normalerweise sollte der Dienst gleich starten und der MySQL Datenbank Server ist einsatzbereit.

5. Schritt: MySQL Datenbank Server Installation testen

Zum Abschluß wollen wir noch testen, ob der MySQL Server wirklich läuft. Geben Sie hierzu in der Kommandozeile den folgenden Befehl ein:


mysqlshow -uroot -p

Sie müssten eigentlich zur Eingabe eines Passwortes aufgefordert werden. Da Sie sich jedoch zum ersten Mal am Server anmelden und das alte Passwort als abgelaufen gekennzeichnet ist, müssen Sie zunächst ein neues Passwort eingeben. Danach sehen Sie eine Liste mit allen Datenbanken (die im Augenblick noch recht übersichtlich sein dürfte!).

Ähnliche Artikel:

Kommentare(4)

StephanFeb 2020

Danke für die schnelle Rückmeldung.
Ich befürchte bei meiner Installation liegt aber mehr bzw. etwas anderes im Argen.
1. Versuch:
mysqld -uroot -p
fordert
Enter password: *********
und meldet dann
mysqld: Can not perform keyring migration : Invalid –keyring-migration-source option.
2020-02-27T15:35:53.931431Z 0 [Warning] [MY-010915] [Server] ‚NO_ZERO_DATE‘,
‚NO_ZERO_IN_DATE‘ and ‚ERROR_FOR_DIVISION_BY_ZERO‘ sql modes should be
used with strict mode. They will be merged with strict mode in a future release.
2020-02-27T15:35:53.931524Z 0 [System] [MY-010116] [Server] d:Servermysq
binmysqld.exe (mysqld 8.0.19) starting as process 7772
2020-02-27T15:35:53.936521Z 0 [ERROR] [MY-011084] [Server] Keyring migration failed.
2020-02-27T15:35:53.947698Z 0 [ERROR] [MY-010119] [Server] Aborting
2020-02-27T15:35:54.270261Z 0 [System] [MY-010910] [Server] d:Servermysql
binmysqld.exe: Shutdown complete (mysqld 8.0.19) MySQL Community Server – GPL.

2. Versuch:
>mysqlshow -uroot -p
fordert
Enter password: *********
und meldet dann
mysqlshow: Access denied for user ‚root’@’localhost‘ (using password: YES)

Macht es Sinn, mysql zu deinstallieren und neu zu installieren?

Noch eine Anmerkung: Bevor ich Deine Anleitung gefunden habe, hatte ich mysql bereits einmal über den standard Installer installiert, aber nie in Betrieb genommen (also auch noch kein Passwort vergeben). Vor der Installation nach Deiner Anleitung habe ich diese Installation dann aber deinstalliert.

    adminFeb 2020

    Das klingt danach, als hätte der Server ein Problem mit dem DataDir. Da könnte man jetzt mit ein bisschen Aufwand dies wieder beheben, allerdings ist hier eine Beschreibung schwierig, weil – je nach Ursache und Konstellation – verschiedene Schritte erforderlich sind.
    Am einfachsten wäre tatsächlich alles zu löschen und von vorne anfangen. Bitte auch darauf achten, dass keine alten Registry-Einträge von der vorherigen Installation verblieben sind (ich vermute hier die Ursache für die Fehlermeldungen!). Durch die vorherige Installation sind wahrscheinlich noch Reste vorhanden gewesen, die sich mit der neuen überschnitten haben. Am besten einen Registry-Cleaner verwenden (Alternativ den Registryeditor starten und nach allen Einträgen mit „mysql“ suchen und löschen).
    Wenn alles gelöscht ist, dann bitte nochmals die Installation gemäß der Beschreibung in diesem Artikel durchführen und es sollte klappen.

StephanFeb 2020

Vielen Dank für die tolle Anleitung.
Leider werde ich beim letzten Schritt mysqlshow -uroot -p zur EIngabe eines Passwortes aufgefordert und habe keine Möglichkeit ein neues Passwort einzugeben.
Es erscheint die Meldung:
mysqlshow: Access denied for user ‚root’@’localhost‘ (using password: YES)
Scheinbar wird mein Anmeldeversuch nicht als Erstanmeldung betrachtet.
Was kann ich tun?

    adminFeb 2020

    Hallo Stephan,

    als erstes würde ich versuchen, den Server direkt zu starten in der Kommandozeile mit
    mysqld -uroot -p
    Wenn das denselben Fehler ausgibt, dann

    einmal den folgenden Lösungsweg ausprobieren:

    In der Befehlszeile eingeben:
    mysqld –skip-grant-tables
    Damit wird der Server-Dienst neu gestartet ohne Sicherheitsoptionen.
    Danach folgendes eingeben:
    mysql -u root mysql
    Damit sollte man sich ohne Passwort anmelden können.
    Jetzt kann man manuell ein Passwort festlegen mit den Befehlen:
    UPDATE user SET Password=PASSWORD(‚my_password‘) where USER=’root‘;
    FLUSH PRIVILEGES;
    Bekommt man eine Fehlermeldung, dann folgende Variante ausprobieren:
    update user set authentication_string=password(‚my_password‘) where user=’root‘;
    Eines von beiden sollte funktionieren.
    Schließlich den Server neu starten mit
    net stop mysql
    net start mysql
    Danach sollte man sich mit dem zuvor definierten Passwort ‚my_password‘ anmelden können.

Fragen oder Feedback zu diesem Artikel

Deine E-Mail-Adresse wird nicht veröffentlicht.