Ich habe versucht, MySQL auf einer virtuellen Linux-Maschine unter OCI Compute zu installieren

Einführung

Wir haben die Schritte zur Installation von MySQL Community Server unter Oracle Linux und CentOS zusammengefasst, die vom Oracle Cloud Infrastructure (OCI) Compute Service als ORACLE-Standardimages bereitgestellt werden. Ich habe es mit einer Kombination aus Oracle Linux 8/7 (CentOS 7) und MySQL Community Server 8.0 / 5.7 bestätigt.

Zusammenfassung des Installationsbefehls

Bevor ich das detaillierte Verfahren erläutere, habe ich die Installationsbefehle für jede Kombination zusammengefasst. Befehle wie das Überprüfen des Repositorys werden weggelassen.

Oracle Linux 8.2

Überprüfungsumgebung

Oracle Linux Server release 8.2 MySQL Ver 8.0.22 MySQL Ver 5.7.32

Installation von MySQL 8.0

python


$ sudo rpm -Uvh http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
$ sudo dnf module disable mysql mariadb
$ sudo dnf install mysql-community-server
$ sudo systemctl start mysqld
$ sudo cat /var/log/mysqld.log | grep password
$ mysql_secure_installation

Installation von MySQL 5.7

python


$ sudo rpm -Uvh https://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql-community-release-el7-7.noarch.rpm
$ sudo dnf config-manager --disable mysql56-community
$ sudo dnf config-manager --enable mysql57-community
$ sudo dnf module disable mysql mariadb
$ sudo dnf install mysql-community-server
$ sudo systemctl start mysqld
$ sudo cat /var/log/mysqld.log | grep password
$ mysql_secure_installation

Oracle Linux 7.9 / CentOS Linux 7.8

Überprüfungsumgebung

Oracle Linux Server release 7.9 CentOS Linux release 7.8 MySQL Ver 8.0.22 MySQL Ver 5.7.32

Installation von MySQL 8.0

python


$ sudo rpm -Uvh http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
$ sudo yum install mysql-community-server
$ sudo systemctl start mysqld
$ sudo cat /var/log/mysqld.log | grep password
$ mysql_secure_installation

Installation von MySQL 5.7

python


$ sudo rpm -Uvh https://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql-community-release-el7-7.noarch.rpm
$ sudo yum-config-manager --disable mysql56-community
$ sudo yum-config-manager --enable mysql57-community
$ sudo yum install mysql-community-server
$ sudo systemctl start mysqld
$ sudo cat /var/log/mysqld.log | grep password
$ mysql_secure_installation

Details zum Installationsverfahren

Wir werden das detaillierte Verfahren basierend auf dem Ausführungsprotokoll überprüfen, wenn MySQL 8.0 unter Oracle Linux 8.2 installiert ist. Ich habe den Befehl dnf (yum) verwendet, der in RHEL 8.0 [^ 1] angezeigt wurde. Wir werden anhand der Betriebssystemversion des von ORACLE bereitgestellten Images der vom OCI Compute Service erstellten virtuellen Maschine prüfen.

[^ 1]: Oracle® Linux 8 Versionshinweise für Oracle Linux 8 Anhang A Vergleich von Yum Version 3 mit DNF -yum-appendix.html)

python


$ cat /etc/oracle-release
Oracle Linux Server release 8.2

Installieren Sie als Nächstes die MySQL 8.0 RPM-Datei für Oracle Linux 8. Yums Repository ist unten. MySQL Community Downloads - MySQL Yum Repository

python


$ sudo rpm -Uvh http://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm

Überprüfen Sie die aktivierten Repositorys.

python


$ sudo dnf repolist all
Failed to set locale, defaulting to C.UTF-8
repo id                            repo name                                     status
ksplice-uptrack                    Ksplice Uptrack for Oracle Linux              disabled
mysql-cluster-8.0-community        MySQL Cluster 8.0 Community                   disabled
mysql-cluster-8.0-community-source MySQL Cluster 8.0 Community - Source          disabled
mysql-connectors-community         MySQL Connectors Community                    enabled
mysql-connectors-community-source  MySQL Connectors Community - Source           disabled
mysql-tools-community              MySQL Tools Community                         enabled
mysql-tools-community-source       MySQL Tools Community - Source                disabled
mysql-tools-preview                MySQL Tools Preview                           disabled
mysql-tools-preview-source         MySQL Tools Preview - Source                  disabled
mysql80-community                  MySQL 8.0 Community Server                    enabled
mysql80-community-source           MySQL 8.0 Community Server - Source           disabled
ol8_UEKR6                          Latest Unbreakable Enterprise Kernel Release  enabled
ol8_UEKR6_RDMA                     Oracle Linux 8 UEK6 RDMA (x86_64)             disabled
ol8_addons                         Oracle Linux 8 Addons (x86_64)                enabled
ol8_appstream                      Oracle Linux 8 Application Stream (x86_64)    enabled
ol8_baseos_latest                  Oracle Linux 8 BaseOS Latest (x86_64)         enabled
ol8_codeready_builder              Oracle Linux 8 CodeReady Builder (x86_64) - U disabled
ol8_developer                      Oracle Linux 8 Development Packages (x86_64)  disabled
ol8_developer_EPEL                 Oracle Linux 8 EPEL Packages for Development  disabled
ol8_developer_UEKR6                Developer Preview of UEK Release 6 (x86_64)   disabled
ol8_ksplice                        Ksplice for Oracle Linux 8 (x86_64)           enabled
ol8_oci                            Oracle Linux 8 OCI Packages (x86_64)          enabled
ol8_oci_included                   Oracle Software for OCI users on Oracle Linux enabled
ol8_u0_baseos_base                 Oracle Linux 8 BaseOS GA (x86_64)             disabled
ol8_u1_baseos_base                 Oracle Linux 8.1 BaseOS (x86_64)              disabled
ol8_u2_baseos_base                 Oracle Linux 8.2 BaseOS (x86_64)              disabled

Deaktivieren Sie die standardmäßig festgelegten MySQL- und MarinaDB-Module.

python


$ sudo dnf module disable mysql mariadb

Überprüfen Sie die Version des zu installierenden Pakets mit dem folgenden Befehl.

python


$ sudo dnf info mysql-community-server
Failed to set locale, defaulting to C.UTF-8
Last metadata expiration check: 0:01:02 ago on Sun Nov 15 11:00:21 2020.
Available Packages
Name         : mysql-community-server
Version      : 8.0.22
Release      : 1.el8
Architecture : x86_64
Size         : 53 M
Source       : mysql-community-8.0.22-1.el8.src.rpm
Repository   : mysql80-community
Summary      : A very fast and reliable SQL database server
URL          : http://www.mysql.com/
License      : Copyright (c) 2000, 2020, Oracle and/or its affiliates. Under GPLv2
             : license as shown in the Description field.
Description  : The MySQL(TM) software delivers a very fast, multi-threaded, multi-user,
             : and robust SQL (Structured Query Language) database server. MySQL Server
             : is intended for mission-critical, heavy-load production systems as well
             : as for embedding into mass-deployed software. MySQL is a trademark of
             : Oracle and/or its affiliates
             : 
             : The MySQL software has Dual Licensing, which means you can use the MySQL
             : software free of charge under the GNU General Public License
             : (http://www.gnu.org/licenses/). You can also purchase commercial MySQL
             : licenses from Oracle and/or its affiliates if you do not wish to be bound
             : by the terms of the GPL. See the chapter "Licensing and Support" in the
             : manual for further info.
             : 
             : The MySQL web site (http://www.mysql.com/) provides the latest news and
             : information about the MySQL software.  Also please see the documentation
             : and the manual for more information.
             : 
             : This package includes the MySQL server binary as well as related utilities
             : to run and administer a MySQL server.

Wenn es kein Problem gibt, installieren Sie es mit dem folgenden Befehl.

python


$ sudo dnf install mysql-community-server

Überprüfen Sie nach Abschluss der Installation die MySQL-Version mit dem folgenden Befehl.

python


$ mysqld --version
/usr/sbin/mysqld  Ver 8.0.22 for Linux on x86_64 (MySQL Community Server - GPL)

Starten wir MySQL.

python


$ sudo systemctl start mysqld
$ sudo systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disab>
   Active: active (running) since Sun 2020-11-15 11:03:45 GMT; 9s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 37102 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 37178 (mysqld)
   Status: "Server is operational"
    Tasks: 38 (limit: 48672)
   Memory: 458.6M
   CGroup: /system.slice/mysqld.service
           └─37178 /usr/sbin/mysqld

Nov 15 11:03:36 iaasmysql systemd[1]: Starting MySQL Server...
Nov 15 11:03:45 iaasmysql systemd[1]: Started MySQL Server.

Das anfängliche Passwort des Root-Benutzers wird in / var / log / mysqld.log aufgezeichnet, wenn MySQL zum ersten Mal gestartet wird. Greifen Sie auf die Datei zu und suchen Sie nach dem Speicherort des Kennworts.

python


$ sudo cat /var/log/mysqld.log | grep password
2020-11-15T11:03:41.974831Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: PASSWORD

Führen Sie "mysql_secure_installation" aus, um sicherheitsrelevante Anfangseinstellungen wie das Zurücksetzen des Kennworts vorzunehmen. Ich überprüfe die Einstellungen von "mysql_secure_installation" Schritt für Schritt. Wenn Sie "mysql_secure_installation" starten, werden Sie zunächst nach dem Anfangskennwort des Root-Benutzers gefragt. Geben Sie es also ein und starten Sie es. Verwenden Sie das in / var / log / mysqld.log bestätigte Passwort. Außerdem wird gesagt, dass das Root-Passwort abgelaufen ist. Legen Sie daher ein neues Passwort fest. Sie müssen es zur Bestätigung zweimal eingeben.

python


$ mysql_secure_installation

Securing the MySQL server deployment.

Enter password for user root: 

The existing password for the user account root has expired. Please set a new password.

New password: 

Re-enter new password: 
The 'validate_password' component is installed on the server.
The subsequent steps will run with the existing configuration
of the component.
Using existing password for root.

Estimated strength of the password: 100 

Sie werden auch gefragt, ob Sie das Kennwort des Root-Benutzers ändern möchten. Auch hier müssen Sie es zur Bestätigung zweimal eingeben.

python


Change the password for root ? ((Press y|Y for Yes, any other key for No) : y

New password: 

Re-enter new password: 

Estimated strength of the password: 100 
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y

Sie werden gefragt, ob Sie den anonymen Benutzer löschen möchten. Geben Sie "y" ein, um den anonymen Benutzer zu löschen.

python


By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.

Sie werden gefragt, ob Sie den Remote-Root-Benutzerzugriff blockieren möchten. Geben Sie daher "y" ein, um den Remote-Zugriff zu blockieren.

python


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

Sie werden gefragt, ob Sie die Testdatenbank löschen möchten. Geben Sie also "y" ein, um sie zu löschen.

python


By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Schließlich werden Sie gefragt, ob Sie die Berechtigungsänderung aktualisieren möchten. Geben Sie zum Aktualisieren "y" ein

python


Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

All done! 

Stellen Sie sicher, dass Sie über den MySQL-Client darauf zugreifen können.

python


$ mysql -u root mysql -p
Enter password: 
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 13
Server version: 8.0.22 MySQL Community Server - GPL

Copyright (c) 2000, 2020, 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.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

Verwandte Informationen

MySQL 8.0 Reference Manual 2.5 Installing MySQL on Linux MySQL 5.6 Referenzhandbuch 2.5 MySQL unter Linux installieren

Recommended Posts

Ich habe versucht, MySQL auf einer virtuellen Linux-Maschine unter OCI Compute zu installieren
Erstellen Sie eine virtuelle Linux-Maschine unter Windows
[Azure] Ich habe versucht, eine virtuelle Linux-Maschine mit Azure von Microsoft Learn zu erstellen
Ich habe versucht, den Linux-Kernel auf virtualbox + vagrant zu installieren
Ich habe versucht, einen Treiber für eine Netzwerkkarte zu installieren, die von Linux nicht erkannt wird
Ich habe einen visuellen Regressionstest auf GitHub Pages versucht
Ich habe Kaokore, einen klassischen japanischen Datensatz, auf EfficientNet ausprobiert.
[Shell-Start] Ich habe versucht, die Shell mit einem billigen Linux-Board-G-Cluster auf dem Fernseher anzuzeigen
Ich habe versucht, Tensorboard zu verwenden, ein Visualisierungstool für maschinelles Lernen
Ich habe versucht, Linux wieder einzuführen
Ich habe MLflow auf Databricks ausprobiert
Ich habe versucht, eine Serverumgebung zu erstellen, die unter Windows 10 ausgeführt wird
Ich habe versucht, eine Umgebung von MkDocs unter Amazon Linux zu erstellen
Ein Hinweis, von dem ich süchtig war, als ich unter Linux einen Piepton machte
Ich habe gerade ein Skript geschrieben, um Android auf einem anderen Computer zu erstellen
Ich habe versucht, einen Sender auf der IoT-Plattform "Rimotte" zu registrieren.
Worauf ich bei der Verwendung von CodeIgniter auf einem Linux-Server gestoßen bin
Ich habe AdaNet gegen Tabellendaten ausprobiert
Versuchen Sie, OpenAM unter Amazon Linux zu installieren
Ich habe maschinelles Lernen mit liblinear versucht
Installieren Sie Arch Linux auf DeskMini A300
Führen Sie einen Linux-Server mit GCP aus
Erstellen Sie eine Linux-Umgebung unter Windows 10
Ich habe versucht, Linux auf meinem Mac zu installieren
Ich habe versucht, Objekte mit YOLO v3 (TensorFlow 2.0) auf einer Windows-CPU zu erkennen!
Eine Geschichte, die mich süchtig nach dem Versuch machte, LightFM unter Amazon Linux zu installieren
Ich habe ein Systemkonfigurationsdiagramm mit Diagrams on Docker geschrieben
Ich habe versucht, die Wartezeit der Ausführungswarteschlange eines Prozesses unter Linux zu messen
Punkte, die mich als MySQL-Anfänger oft begeistern