Einführung
MySQL ist ein Open-Source-Datenbankverwaltungssystem, das häufig im Rahmen der beliebten https://www.digitalocean.com/community/tutorials/how-to-install-linux installiert wird -nginx-mysql-php-lemp-stack-on-centos-7 [LEMP] -Stapel (Linux, Nginx, MySQL / MariaDB, PHP / Python / Perl). Es verwendet eine relationale Datenbank und SQL (Structured Query Language), um seine Daten zu verwalten.
CentOS 7 bevorzugt MariaDB, einen Zweig von MySQL, der von den ursprünglichen MySQL-Entwicklern verwaltet und als Ersatz für MySQL entwickelt wurde. Wenn Sie + yum install mysql
unter CentOS 7 ausführen, wird MariaDB anstelle von MySQL installiert. Wenn Sie sich über MySQL vs. MariaDB, MariaDB funktioniert im Allgemeinen nahtlos anstelle von MySQL https://www.digitalocean.com/community/tutorials/how-to-install-mariadb-on-centos-7[Installation von MariaDB auf Centos 7.
In diesem Tutorial wird erklärt, wie MySQL Version 5.7 auf einem CentOS 7-Server installiert wird.
Voraussetzungen
Um diesem Tutorial zu folgen, benötigen Sie:
-
Ein CentOS 7 mit einem Nicht-Root-Benutzer mit "+ sudo +" - Berechtigungen. Weitere Informationen zum Einrichten eines Benutzers mit diesen Berechtigungen finden Sie im Initial Server Setup with CentOS 7 -Handbuch .
Schritt 1 - Installation von MySQL
Wie in der Einleitung erwähnt, installiert der Yum-Befehl zur Installation von MySQL MariaDB. Um MySQL zu installieren, müssen Sie das MySQL-Community-Yum-Repository aufrufen, das Pakete für MySQL bereitstellt.
Besuchen Sie in einem Webbrowser:
https://dev.mysql.com/downloads/repo/yum/
Beachten Sie, dass die markanten Download-Links nicht direkt zu den Dateien führen. Sie werden stattdessen zu einer nachfolgenden Seite weitergeleitet, auf der Sie aufgefordert werden, sich anzumelden oder ein Konto zu eröffnen. Wenn Sie kein Konto erstellen möchten, suchen Sie den Text "Nein, danke, starten Sie einfach meinen Download", klicken Sie mit der rechten Maustaste und kopieren Sie den Link-Speicherort, oder bearbeiten Sie die Versionsnummer in den Befehlen unten.
Suchen Sie die gewünschte Version und aktualisieren Sie sie nach Bedarf über den folgenden Link:
image: https: //assets.digitalocean.com/articles/mysql-centos7/repo-name-small.png
wget https://dev.mysql.com/get/.noarch.rpm
Sobald die RPM-Datei gespeichert ist, überprüfen wir die Integrität des Downloads, indem wir "+ md5sum +" ausführen und mit dem entsprechenden MD5-Wert auf der Site vergleichen:
md5sum .noarch.rpm
Output1a29601dc380ef2c7bc25e2a0e25d31e mysql57-community-release-el7-9.noarch.rpm
Vergleichen Sie diese Ausgabe mit dem entsprechenden MD5-Wert auf der Site:
image: https://assets.digitalocean.com/articles/mysql-centos7/md5-sum-small.png [Screencapture, das md5dsum hervorhebt]
Nachdem wir überprüft haben, dass die Datei nicht beschädigt oder geändert wurde, installieren wir das Paket:
sudo rpm -ivh .noarch.rpm
Dadurch werden zwei neue MySQL-Yum-Repositorys hinzugefügt, mit denen wir nun MySQL Server installieren können:
sudo yum install mysql-server
Drücken Sie + y +
, um zu bestätigen, dass Sie fortfahren möchten. Da wir das Paket gerade hinzugefügt haben, werden wir auch aufgefordert, den GPG-Schlüssel zu akzeptieren. Drücken Sie + y +
, um es herunterzuladen und die Installation abzuschließen.
Schritt 2 - Starten von MySQL
Wir starten den Daemon mit dem folgenden Befehl:
sudo systemctl start mysqld
+ systemctl +
zeigt nicht das Ergebnis aller Dienstverwaltungsbefehle an. Um sicherzugehen, dass wir erfolgreich waren, verwenden wir den folgenden Befehl:
sudo systemctl status mysqld
Wenn MySQL erfolgreich gestartet wurde, sollte die Ausgabe "+ Active: active (running) +" enthalten und die letzte Zeile sollte ungefähr so aussehen:
Dec 01 19:02:20 centos-512mb-sfo2-02 systemd[1]: Started MySQL Server.
Während des Installationsvorgangs wird ein temporäres Kennwort für den MySQL-Root-Benutzer generiert. Suchen Sie es mit dem folgenden Befehl in der Datei "+ mysqld.log +":
sudo grep 'temporary password' /var/log/mysqld.log
Output2016-12-01T00:22:31.416107Z 1 [Note] A temporary password is generated for root@localhost:
Notieren Sie sich das Kennwort, das Sie im nächsten Schritt benötigen, um die Installation zu sichern und wo Sie gezwungen sind, es zu ändern. Die Standardkennwortrichtlinie erfordert 12 Zeichen mit mindestens einem Großbuchstaben, einem Kleinbuchstaben, einer Zahl und einem Sonderzeichen.
Schritt 3 - Konfiguration von MySQL
MySQL enthält ein Sicherheitsskript, um einige der weniger sicheren Standardoptionen für Dinge wie Remote-Root-Anmeldungen und Beispielbenutzer zu ändern.
Verwenden Sie diesen Befehl, um das Sicherheitsskript auszuführen.
sudo mysql_secure_installation
Dadurch werden Sie zur Eingabe des Standard-Root-Passworts aufgefordert. Sobald Sie es eingeben, müssen Sie es ändern.
OutputThe existing password for the user account root has expired. Please set a new password.
New password:
Geben Sie ein neues 12-stelliges Passwort ein, das mindestens einen Großbuchstaben, einen Kleinbuchstaben, eine Ziffer und ein Sonderzeichen enthält. Geben Sie es erneut ein, wenn Sie dazu aufgefordert werden.
Sie erhalten ein Feedback zur Stärke Ihres neuen Passworts und werden sofort aufgefordert, es erneut zu ändern. Da Sie dies gerade getan haben, können Sie getrost "+ Nein +" sagen:
OutputEstimated strength of the password: 100
Change the password for root ? (Press y|Y for Yes, any other key for No) :
Nachdem wir die Aufforderung zum erneuten Ändern des Kennworts abgelehnt haben, drücken wir "+ Y " und dann " ENTER +" für alle nachfolgenden Fragen, um anonyme Benutzer zu entfernen, die Remote-Root-Anmeldung zu verweigern, die Testdatenbank zu entfernen und auf sie zuzugreifen und laden Sie die Berechtigungstabellen neu.
Nachdem wir die Installation gesichert haben, testen wir sie.
Schritt 4 - Testen von MySQL
Wir können unsere Installation überprüfen und Informationen darüber abrufen, indem wir uns mit dem Tool "+ mysqladmin " verbinden, einem Client, mit dem Sie Verwaltungsbefehle ausführen können. Verwenden Sie den folgenden Befehl, um eine Verbindung zu MySQL als * root * (` -u root `) herzustellen, ein Kennwort einzugeben (` -p +`) und die Version zurückzugeben.
mysqladmin -u root -p version
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
Ausgabe
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version 5.7.16
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/lib/mysql/mysql.sock
Uptime: 2 min 17 sec
Threads: 1 Questions: 6 Slow queries: 0 Opens: 107 Flush tables: 1 Open tables: 100 Queries per second avg: 0.043
Dies zeigt an, dass Ihre Installation erfolgreich war.
Fazit
In diesem Tutorial haben wir MySQL auf einem CentOS 7-Server installiert und gesichert. Weitere Informationen zur Verwendung von MySQL finden Sie in diesem Handbuch unter mehr über MySQL-Befehle erfahren. Sie können auch in Betracht ziehen, unter https://www.digitalocean.com/community/tutorials/how-to-secure-mysql-and-mariadb-databases-in-a-linux-vps einige zusätzliche Sicherheitsmaßnahmen zu implementieren.