Итак, установка MySQL на Ubuntu 18.04

Eine Vorgängerversion умирает Учебники wurde von Hazel Virdó verfasst

Einführung

MySQL ist ein quelloffenes Datenbankmanageystemystem, das häufig als Teil des believebten https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql- php-lamp-stack-ubuntu-18-04 [LAMP-Stacks] (Linux, Apache, MySQL, PHP / Python / Perl). Zur Verwaltung Seiner Daten verwendet es eine Relationsale Datenbank und SQL (Structurierte Abfragesprache).

Die Kurzversion der Installation ist einfach: Aktualisieren Sie Ihren Paketindex, installieren Sie das + mysql-server + -Paket und führen Sie dann das mitgelieferte Sicherheitsskript aus.

sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation

Руководство пользователя Dieses, с помощью MySQL версии 5.7 и Ubuntu 18.04-Установка сервера. Уинн Седе Беатен Беатехенн MySQL-Установка на Версии 5.7. MySQL 5.7-Updateleitfaden] lesen.

Voraussetzungen

Um diesem Tutorial folgen zu können, benötigen Sie Folgendes:

  • Einen Ubuntu 18.04-Server, der gemäß diesem Installationshandbuch eingerichtet wurde, einschließlich eines Nicht- * Root * - Benutzers mit + sudo + -Rechten und einer Firewall.

Schritt 1 - MySQL installieren

В Ubuntu 18.04 есть стандартная версия MySQL в APT-Paket-Repository enthalten. Zum Zeitpunkt der Erstellung ist das MySQL 5.7.

Aktualisieren Sie zur Инсталляция den Paketindex auf Ihrem Server mit + apt +:

sudo apt update

Installieren Sie dann das Standardpaket:

sudo apt install mysql-server

Dadurch wird MySQL installiert, aber Sie werden nicht aufgefordert, ein Passwort festzulegen oder andere Konfigurationsänderungen vorzunehmen. Да, MySQL-установка. Отвлечение, странное отношение к существующим.

Schritt 2 - MySQL конфигурирен

Bei Neuinstallationen sollten Sie das mitgelieferte Sicherheitsskript ausführen. Умирает от взлома сингера Standardoptionen für Dinge wie Remote-Root-Logins und Musterbenutzer. Больше информации MySQL-Versionen mussten Sie das Datenverzeichnis auch manuell initialisieren, aber das erfolgt jetzt automatisch.

Führen Sie das Sicherheitsskript aus:

sudo mysql_secure_installation

Dies führt Sie durch eine Reihe von Eingabeaufforderungen, in denen Sie einige Änderungen an den Sicherheitsoptionen Ihrer MySQL-Installation vornehmen können. Die erste Eingabeaufforderung fragt, obsie das validierte Passwort-Plugin einrichten möchten, mit dem Sie Sie die Stärke Ihres MySQL-Passworts testen können. Unabhängig von Ihrer Wahl wird die nächste Eingabeaufforderung darin bestehen, ein Passwort for MySQL- * Root * -Benutzer festzulegen. Geben Sie ein sicheres Passwort Ihrer Wahl ein und bestätigen Sie es anschließend.

Von dort aus können Sie + Y + und dann + ENTER + drücken, um die Standardwerte for all folgenden Fragen zu übernehmen. Dadurch werden einige anonyme Benutzer und die Testdatenbank entannt, Remote-Root-Logins deaktiviert and diese neuen Regeln geladen, поэтому MySQL die von Ihnen vorgenommenen Änderungen sofort berücksichtigt.

Ум, MySQL-Datenverzeichnis zu initialisieren, vervenden Sie + mysql_install_db + für Versionen vor 5.7.6 und + mysqld --initialize + für 5.7.6 und später. Wenn Sie jedoch MySQL от Debian-Distribution installiert haben, wie in Schritt 1 beschrieben, wurde das Datenverzeichnis automatisch initialisiert; Sie Müssen Nichts Tun. Вен Зее Версухен, ден Бефель тротздем аушуфюрен, странный приверженец Фелер ангезеигт:

Выход

mysqld: Can't create directory '/var/lib/mysql/' (Errcode: 17 - File exists)
. . .
2018-04-23T13:48:00.572066Z 0 [ERROR] Aborting

Beachten Sie, dass, obwohl Sie ein Passwort for MySQL- * Root * -Benutzer festgelegt haben, dieser nicht konfiguriert ist, um sich be ver der verbindung mit der MySQL-Shell with einem Passwort zu authentifizieren. Bei Bedarf können Sie diese Einstellung anpassen, Inde Sie Sie Schritt 3 folgen.

Schritt 3 - (необязательно) Einstellen der Benutzerauthentifizierung und der Berechtigungen

В Ubuntu-System с MySQL 5.7 (и новой версией) MySQL- * Root * -Benutzer so eingestellt, dass er sich standardmäigig mit dem + auth_socket + -Plugin und nicht mit einem Passwort authentifiziert. Умирает в самых разных сферах деятельности Sicherheit и Benutzerfreundlichkeit, а также в рамках программы Sache erschweren, Wenn Sie einem externen Programm (z.B. phpMyAdmin) den Zugriff auf den Benutzer ermöglichen müssen.

Множество паролей для Verbindung zu MySQL als * root * zu verwenden, müssen Sie die Authentifizierungsmethod von + auth_socket + auf + mysql_native_password + umstellen. Öffnen Sie dazu die MySQL-Eingabeaufforderung Ihres Терминалы:

sudo mysql

Als nächstes überprüfen Sie mit folgendem Befehl, welche Authentifizierungsmethode jedes Ihrer MySQL-Benutzerkonten verwendet:

SELECT user,authentication_string,plugin,host FROM mysql.user;
Output+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

В Diesem Beispiel sehen Sie, dass der * Root * -Benutzer sich tatsächlich mit dem Plugin + auth_socket + authentifiziert. Ум * корень * -Конто для смерти Authentifizierung mit einem Passwort zu konfigurieren, führen Sie den folgenden Befehl + ALTER USER + aus. Ахтен Си Дарауф, ++ в духе прошлого Passwort Ihrer Wahl zu ändern, und beachten Sie, dass dieser Befehl das * Root * -Passwort ändert, das Sie в Schritt 2 festgelegt haben:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';

Führen Sie dann + ПРИВИЛЕГИИ ПРОМЫШЛЕННОСТИ + aus, wodurch der Server angewiesen wird, die Berechtigungstabellen neu zu laden und die neuen Änderungen umzusetzen:

FLUSH PRIVILEGES;

Überprüfen Sie die von jedem Ihrer Benutzer verwendeten Authentifizierungsmethoden erneut, um sicherzustellen, dass * root * sich nicht mehr mit dem + auth_socket + -Plugin authentifiziert:

SELECT user,authentication_string,plugin,host FROM mysql.user;
Output+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             | *3636DACC8616D997782ADD0839F92C1571D6D78F |  | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+
4 rows in set (0.00 sec)

Sie können in diesem Beispiel sehen, dass sich der MySQL-Benutzer * root * nun mit einem Passwort authentifiziert. Sobald Sie умирает от Ihrem eigenen Server, который лучше всего подходит для MySQL-Shell:

exit

Альтернативный подход к решению задач, передача рабочего процесса, лучший способ улучшить работу Benutzer с MySQL zu verbinden. Um einen solchen Benutzer anzulegen, öffnen Sie die MySQL-Shell erneut:

sudo mysql

Erstellen Sie von dort aus einen neuen Benutzer und geben ihm ein sicheres Passwort:

CREATE USER ''@'localhost' IDENTIFIED BY '';

Gewähren Sie Ihrem neuen Benutzer dann die entsprechenden Berechtigungen. Beispielsweise können Sie mit diesem Befehl die Benutzerrechte für alle Tabellen innerhalb der Datenbank sowie die Berechtigung zum Hinzufügen, Ändern und Entfernen von Benutzerrechten erteilen:

GRANT ALL PRIVILEGES ON *.* TO ''@'localhost' WITH GRANT OPTION;

Бичтен Си, Дасс Си и Диезер Stelle den Befehl + ПРИВИЛЕГИИ FLUSH + nicht erneut ausführen müssen. Dieser Befehl wird nur benötigt, wenn Sie die Berechtigungstabellen mit Anweisungen wie + INSERT +, + UPDATE + oder + DELETE + ander. Da Sie einen neuen Benutzer angelegt haben und keinen bestehenden ändern, ist + FLUSH PRIVILEGES + hier nicht erforderlich.

Danach verlassen Sie die MySQL-Shell:

exit

Проверка подлинности с помощью MySQL.

Schritt 4 - MySQL Testen

Unabhängig davon, wie Sie es installiert haben, sollte MySQL Automatisch Gestartet Sein. Um dies zu testen, überprüfen Sie den Status.

systemctl status mysql.service

Sie werden folgende Meldung sehen:

Выход

● mysql.service - MySQL Community Server
  Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
  Active: active (running) since Wed 2018-04-23 21:21:25 UTC; 30min ago
Main PID: 3754 (mysqld)
   Tasks: 28
  Memory: 142.3M
     CPU: 1.994s
  CGroup: /system.slice/mysql.service
          └─3754 /usr/sbin/mysqld

Wenn MySQL не может быть странным, но когда вы запускаете mysql + `start.

Für eine zusätzliche Überprüfung können Sie versuchen, sich mit der Datenbank zu verbinden, Indem Sie das Tool` + mysqladmin + verwenden, ein Client, mit dem Sie административный Befehle ausführen können. Dieser Befehl besagt beispielsweise, sich als * root * (+ -u root `) mit MySQL zu verbinden, ein Passwort (` -p +`) einzugeben und die Версия zurückzugeben.

sudo mysqladmin -p -u root version

Sie sollten folgende Meldung sehen:

Выход

mysqladmin  Ver 8.42 Distrib 5.7.21, for Linux on x86_64
Copyright (c) 2000, 2018, 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.21-1ubuntu1
Protocol version    10
Connection      Localhost via UNIX socket
UNIX socket     /var/run/mysqld/mysqld.sock
Uptime:         30 min 54 sec

Threads: 1  Questions: 12  Slow queries: 0  Opens: 115  Flush tables: 1  Open tables: 34  Queries per second avg: 0.006

Das bedeutet, Dass MySQL ausgeführt Wird.

Fazit

Прошу проинструктировать MySQL-Basissetup на Ihrem Server installiert. Вот что он говорит о Beispiele für die nächsten Schritte, die Sie unternehmen können:

Related