Wenn Sie CentOS-Systeme für die Entwicklung oder Bereitstellung verwenden, ist die Installation von MySQL eine grundlegende Aufgabe. Obwohl Sie den Standardpaketmanager Yum des Systems zum Installieren von MySQL verwenden können, ist die Verwendung von Quellcode zum Installieren von MySQL in einigen Fällen (z. B. beim Anpassen von Kompilierungsoptionen usw.) eine flexiblere Option. In diesem Artikel wird die Installation von MySQL aus dem Quellcode auf CentOS-Systemen vorgestellt, einschließlich Schritten wie der Abhängigkeitsinstallation, Kompilierung und Installation von MySQL.
1. Abhängigkeiten installieren
Bevor wir den MySQL-Quellcode installieren, müssen wir einige Abhängigkeiten installieren. Im CentOS-System können Sie es über den folgenden Befehl installieren:
yum install -y gcc gcc-c++ make ncurses-devel cmake bison
Darunter sind die Funktionen jeder Abhängigkeit wie folgt:
tar -xzf mysql-5.7.32.tar.gz cd mysql-5.7.323. Bearbeiten Sie die Kompilierungsoptionen Die Standardkompilierungsoptionen von MySQL entsprechen nicht unbedingt unseren Anforderungen, daher müssen wir die Kompilierungsoptionen bearbeiten. Nachdem Sie im vorherigen Schritt das MySQL-Quellcodeverzeichnis eingegeben haben, verwenden Sie den folgenden Befehl, um die Datei CMakeLists.txt zu öffnen:
vim CMakeLists.txtSuchen Sie die folgenden Zeilen in der Datei:
# Settings for a "typical" MySQL build, using all of the default components. SET(VARIANTS a b c) SET(BUILD_CONFIG "community")Unter diesen definiert die VARIANTS-Variable in der zweiten Zeile die Kompilierungsoptionen von MySQL. Sie können den folgenden Befehl verwenden, um ihn auf die von uns benötigten Kompilierungsoptionen zu überschreiben:
SET(VARIANTS server)Auf diese Weise kompiliert MySQL nur serverseitige Programme, ausgenommen Client-Programme und andere Komponenten. Darüber hinaus müssen wir auch die folgenden zwei Zeilen ändern:
SET(DEFAULT_CHARSET "utf8") SET(DEFAULT_COLLATION "utf8_general_ci")Ändern Sie sie in:
SET(DEFAULT_CHARSET "utf8mb4") SET(DEFAULT_COLLATION "utf8mb4_general_ci")Auf diese Weise verwendet MySQL standardmäßig den Zeichensatz utf8mb4 und unterstützt die Speicherung von 4-Byte-Unicode-Zeichen. 4. Kompilieren Sie den MySQL-QuellcodeVerwenden Sie nach dem Bearbeiten der Kompilierungsoptionen den folgenden Befehl, um das Makefile zu generieren:
cmake .Danach kompilieren Sie MySQL mit dem Befehl make:
makeDie Kompilierungszeit ist bitte lang warte geduldig. Wenn beim Kompilieren ein Fehler auftritt, beheben Sie ihn bitte entsprechend der Fehlermeldung. 5. MySQL installierenNach erfolgreicher Kompilierung verwenden Sie den folgenden Befehl, um MySQL zu installieren:
make installNach erfolgreicher Installation wird MySQL standardmäßig im Verzeichnis /usr/local/mysql installiert. Wir müssen auch einige Konfigurationsvorgänge durchführen:
cd /usr/local/mysql chown -R mysql:mysql . bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data chown -R root . chown -R mysql:mysql data bin/mysqld_safe --user=mysql &Die Bedeutung der obigen Befehle ist wie folgt:
Verwenden Sie den Befehl chown, um dem MySQL-Benutzer und der MySQL-Gruppe den Besitz des MySQL-Verzeichnisses zuzuordnen;
Verwenden Sie mysqld Befehl, um den MySQL-Initialisierungsvorgang durchzuführen und das temporäre Passwort des Root-Benutzers zu generieren.
bin/mysql -uroot -pZu diesem Zeitpunkt werden Sie vom System aufgefordert, das Passwort einzugeben. Wir geben das temporäre Passwort ein, das wir gerade generiert haben. Verwenden Sie nach erfolgreicher Anmeldung die folgende SQL, um das Root-Benutzerpasswort zu ändern:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_new_password';Darunter ist Ihr_neues_Passwort das neue Passwort, das Sie festgelegt haben. Zu diesem Zeitpunkt haben wir den gesamten Prozess der Installation von MySQL aus dem Quellcode auf dem CentOS-System erfolgreich abgeschlossen.
Das obige ist der detaillierte Inhalt vonCentos-Quellcode-Installation MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!