Im vorherigen Artikel haben wir Folgendes vorgestellt: MySQL8.0.20-Installationstutorial und ausführliches Tutorial zu Installationsproblemen https://www.jb51.net/article/186202.htm Download und Installation von MySQL8.0.20 und aufgetretene Probleme (mit Bildern und Text) https://www.jb51.net/article/186208.htm Schritte zur Installation von Mysql8.0.20 auf CentOS7: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-20.html 1 Übersicht Dieser Artikel beschreibt hauptsächlich, wie MySQL Community Edition 8.0.20 aus dem Quellcode kompiliert und installiert wird. Zunächst werden einige Kenntnisse zur Kompilierung und Installation vermittelt, und dann wird mit der Kompilierung und Installation begonnen. 2 Kenntnisse über die Kompilierung und Installation von Quellcode 2.1 erstellen und konfigurieren make ist ein Kompilierungsbefehl, der im aktuellen Verzeichnis nach der Makefile-Datei sucht. Die Makefile-Datei enthält detaillierte Informationen zum Kompilieren des Quellcodes. Configure ist ein vom Softwareentwickler geschriebenes Erkennungsprogramm, um die Entwicklungsumgebung des Benutzers zu erkennen und nach Abschluss der Erkennung eine Makefile-Datei zu generieren. Normalerweise erkennt configure Folgendes:
2.2 Tarball-Datei Die Tarball-Datei ist eigentlich eine Datei, die den Quellcode mit Tar komprimiert. Zur Komprimierung wird normalerweise Gzip verwendet und die Erweiterung lautet normalerweise .tar.gz oder .tgz. Da Technologien wie bzip2 und xz jedoch bessere Komprimierungseffekte als gzip haben, werden der Dateiname und die Erweiterung ebenfalls zu .tar.bz2 oder .tar.xz. Normalerweise enthält eine Tarball-Datei:
2.3 Kompilieren und installieren Sie zugehörige Komponenten aus dem Quellcode 2.3.1 Compiler Zum Ausführen von Kompilierungsvorgängen ist ein Compiler erforderlich (normalerweise gcc). 2.3.2 make+autoconfig Um den Kompilierungsprozess zu vereinfachen, muss Software, die im Tarball-Format veröffentlicht wird, normalerweise make gemäß den Abhängigkeiten der Zieldateien kompilieren. Da make jedoch Makefile erfordert, ist autoconfig erforderlich, um Makefile zu generieren. 2.3.3 Funktionsbibliothek Die vom Kernel bereitgestellten Bibliotheken und zugehörigen Include-Dateien werden benötigt. 2.4 Statische und dynamische Bibliotheken Funktionsbibliotheken werden in zwei Typen unterteilt: dynamische Bibliotheken und statische Bibliotheken, von denen die meisten in /lib und /lib64 platziert sind. 2.4.1 Statische Bibliotheken Die Erweiterung lautet .a und wird während der Kompilierung direkt in das ausführbare Programm integriert, sodass die mit der statischen Bibliothek generierte Datei größer ist. Die kompilierte ausführbare Datei kann direkt ausgeführt werden, ohne auf externe Funktionsbibliotheken angewiesen zu sein. Darüber hinaus ist ein Upgrade schwierig, da es direkt in das Programm integriert ist und bei einem Upgrade der statischen Bibliothek eine Neukompilierung erforderlich ist. 2.4.2 Dynamische Bibliotheken Die Erweiterung ist .so. Im Gegensatz zu statischen Bibliotheken haben dynamische Bibliotheken nur während der Kompilierung einen Zeiger im Programm. Wenn das ausführbare Programm die Funktionen der Funktionsbibliothek verwenden muss, liest es die Funktionsbibliothek zur Verwendung. Die generierte ausführbare Datei ist kleiner, aber das kompilierte Programm kann nicht unabhängig ausgeführt werden. Darüber hinaus ist das Upgrade bequemer und erfordert keine Neukompilierung, da die ausführbare Datei direkt auf die neue Funktionsbibliotheksdatei verweist. 2.5 Allgemeine Schritte zum Kompilieren und Installieren
Beachten Sie, dass die obigen Schritte in der richtigen Reihenfolge ausgeführt werden. Wenn der vorherige Schritt fehlschlägt, kann der nächste Schritt nicht ausgeführt werden. Mit anderen Worten: Der vorherige Schritt muss erfolgreich ausgeführt werden, bevor der nächste Schritt ausgeführt werden kann. Nach Abschluss der oben genannten sechs Schritte können Sie kompilieren und installieren. Im Allgemeinen sind einige Folgevorgänge erforderlich, z. B. das Hinzufügen des ausführbaren Dateipfads zu PATH, das Hinzufügen von Header- und Bibliotheksdateien zu /usr/include und /etc/ld.so.conf.d und das Hinzufügen von Online-Hilfedateien zu /etc/man_db.conf. 2.6 Psychologische Vorbereitung vor dem Kompilieren und Installieren Hier ist der letzte Tipp. Vor der Installation können Sie Strg+W drücken, um diese Seite zu schließen und sich so unzählige Mühen zu ersparen. 3 MySQL installieren 3.1 Installationsabhängigkeiten Die von MySQL benötigten Abhängigkeiten sind wie folgt:
3.2 Installation des Paketmanagers Für mein Debian-System kann ich apt verwenden: sudo apt-get install -y bison Git-Hostname libncurses-dev libssl-dev machen openssl-Paketkonfiguration Doxygen cmake machen RedHat8.x: sudo yum install -y bison bzip2 git Hostname ncurses-devel openssl openssl-devel pkgconfig tar wget zlib-devel Doxygen Diffutils Rpcgen Make Libtirpc-Devel Cmake GCC RedHat7.x: sudo yum install -y bison bzip2 git Hostname ncurses-devel OpenSSL OpenSSL-Entwicklung pkgconfig tar wget zlib-devel Doxygen cmake gcc Andere können Sie selbst suchen. 3.2 Kompilieren und installieren Wenn Sie es nicht mit einem Paketmanager installieren möchten, können Sie die Methode „Kompilieren und installieren“ verwenden. 3.2.1 cmake installieren tar -zxvf cmake-3.17.2.tar.gz cd cmake-3.17.2 ./bootstrap --prefix=/usr/local/cmake sauber machen make -j 6 #6 ist die Anzahl der CPU-Kerne, benutzerdefinierte Änderung, wenn es fehlschlägt, verwenden Sie bitte make Test machen sudo make installieren 3.2.2 Installieren Sie make Wenn kein Compiler vorhanden ist, können Sie es nicht kompilieren und installieren. Sie können das Softwarepaket zur Installation verwenden. Für mein Debian-System verwende ich direkt apt: sudo apt installieren machen 3.2.3 GCC installieren tar -xvf gcc-9.3.0.tar.xz cd gcc-9.3.0 ./contrib/download_voraussetzungen mkdir-Build CD-Build ../configure --prefix=/usr/local/gcc -enable-checking=release -disable-multilib sauber machen mache -j 6 Test machen sudo make installieren sudo ln -sv /usr/local/gcc/include /usr/include/gcc #/etc/ld.so.conf.d/gcc.conf fügen Sie den folgenden Inhalt hinzu /usr/local/gcc/lib /usr/local/gcc/lib64 3.2.4 Installieren Sie openssl tar -zxvf openssl-1.1.1g.tar.gz cd openssl-1.1.1g ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl/ssl #prefix ist der Installationsort, Standard ist /usr/local #openssldir ist der Speicherort der Konfigurationsdatei, in der auch das Zertifikat und das Schlüsselpaar gespeichert sind make clean mache -j 6 Test machen sudo make installieren sudo ln -sv /usr/local/openssl/include /usr/include/openssl #/etc/ld.so.conf.d/openssl.conf plus folgender Inhalt /usr/local/openssl/lib 3.2.5 Download-Boost Klicken Sie hier, um zur offiziellen Website zu gelangen. Nach dem Download einfach entpacken. tar -xvf boost_1_70_0.tar.bz2 3.2.6 Installieren von ncurses tar -zxvf ncurses-6.2.tar.gz CD ncurses-6.2 ./configure --prefix=/usr/local/ncurses mache -j 6 sudo make installieren sudo ln -sv /usr/local/ncurses/include /usr/include/ncurses #/etc/ld.so.conf.d/ncurses.conf zu /usr/local/ncurses/lib hinzufügen 3.2.7 Bison installieren tar -xvf bison-3.4.tar.xz CD Bison-3.4 ./configure --prefix=/usr/local/bison mache -j 6 sudo make installieren #/etc/ld.so.conf.d/bison.conf zu /usr/local/bison/lib hinzufügen 3.2.8 Git installieren tar -xvf git-2.26.2.tar.xz cd git-2.26.2 ./configure --prefix=/usr/local/git \ --with-openssl=/usr/local/openssl \ --with-libpcre2=/usr/local/pcre2 \ --with-curl=/usr/local/curl \ --with-expat=/usr/local/expat \ --with-iconv=/usr/local/iconv \ --with-editor=/usr/bin/vim \ --with-zlib=/usr/local/zlib \ --with-tcltk=/usr/local/tcl Alle Dokumentinformationen erstellen sudo make install install-doc install-html install-info 3.2.9 Weiterverarbeitung Pfad ändern: #Fügen Sie export PATH=$PATH:\ zu ~/.bash_profile oder ~/.bashrc hinzu /usr/local/cmake/bin:\ /usr/local/gcc/bin:\ /usr/local/openssl/bin:\ /usr/local/bison/bin:\ /usr/local/ncurses/bin:\ /usr/local/git/bin:\ Machen Sie die dynamische Bibliothek wirksam: ldconfig Wenn Sie nicht über ausreichende Berechtigungen verfügen, fügen Sie sudo hinzu. 3.3 MySQL Community Edition herunterladen Offizielle Website hier. Ich kenne den Unterschied zwischen der ersten und der zweiten Variante nicht, da ich beide ausprobiert habe und sie erfolgreich kompiliert und installiert werden können. Obwohl es heißt, dass der zweite einen Boost-Header hat, scheint er nutzlos zu sein. Hier wird die erste verwendet. md5sum mysql-boost-8.0.20.tar.gz 3.4 Makefile erzeugen sudo cmake .. \ -DDEFAULT_CHARSET=utf8mb4 \ -DDEFAULT_COLLATION=utf8mb4_unicode_ci \ # -DENABLED_LOCAL_INFILE=EIN \ -DWITH_SSL=System \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/server \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DMYSQL_TCP_PORT=3306 \ -DDOWNLOAD_BOOST=0 \ -DWITH_BOOST=~/Desktop/boost
Für weitere Parameter verwenden Sie bitte sudo cmake .. -LH Überprüfen. 3.5 Kompilierung und Installation sudo machen oder sudo make -jn Der Autor hat make -j 6 ausprobiert, aber das ist fehlgeschlagen, sodass ihm nichts anderes übrig blieb, als zu make zu wechseln. Test machen Dann installieren Sie: sudo make installieren 3.6 Nachträgliche Konfiguration 3.6.1 Benutzergruppen und Benutzer Erstellen Sie eine neue Benutzergruppe und einen neuen Benutzer und ändern Sie die Berechtigungen für das Benutzerdatenverzeichnis: sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql sudo chown mysql:mysql /usr/local/mysql/data sudo chmod 750 /usr/local/mysql/data Ändern Sie das Datenverzeichnis nach Bedarf. Wenn später ein Schreibfehler auftritt, ändern Sie die Berechtigungen auf 777. 3.6.2 Konfigurationsdatei Die Konfigurationsdatei ist my.cnf und kann in /usw/ /usw./mysql/ Installationsverzeichnis /etc/ ~/ Als nächstes erfolgt die Lesereihenfolge von oben nach unten. Nach der Installation durch den Autor ist die Standardeinstellung /etc/mysql/my.cnf. Dies ist die globale Konfiguration. ~/.my.cnf ist die benutzerspezifische Konfiguration. Ändern Sie hier direkt /etc/mysql/my.cnf: [Client-Server] # Importieren Sie alle .cnf-Dateien aus dem Konfigurationsverzeichnis !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mariadb.conf.d/ [mysqld] Port = 3306 basedir=/usr/local/mysql/server datadir=/usr/local/mysql/data Zeichensatzserver = utf8mb4 [mysql] Standardzeichensatz = utf8mb4 [Kunde] Port = 3306 Standardzeichensatz = utf8mb4 Die Felder unter [mysqld] wurden neu hinzugefügt und Sie können das Datenverzeichnis selbst ändern. 3.7 Initialisierung Umgebungsvariablen ändern: #.bashrc oder .bash_profile plus export PATH=$PATH:/usr/local/mysql/server/bin verwenden mysqld --initialize --user=mysql oder mysqld --initialize-insecure --user=mysql Aktivieren Sie dann die SSL- und RSA-Unterstützung (optional): mysql_ssl_rsa_setup Zum Schluss starten Sie den Dienst: mysqld_safe --user=mysql & 3.8 Passwort ändern Melden Sie sich als Root an, wenn Sie eine unsichere Initialisierung verwenden: mysql -u --skip-password Initialisieren mit initialize: mysql -u root -p Geben Sie einfach das Passwort ein, das während der Initialisierung angezeigt wird. Ändere den Benutzer root@localhost, identifiziert durch „xxx“; 3.9 Testen Verwenden Sie die integrierten Funktionen mysqlshow und mysqladmin: mysqladmin -u root -p Versionmysqlshow -u root -p 3.10 Abschlussarbeiten 3.10.1 Aliase Alias md='mysqld -u mysql &' Auf diese Weise können Sie den MySQL-Dienst durch die Eingabe von md starten. 3.10.2 Mycli installieren Mycli ist ein MySQL-Befehlszeilen-Clienttool mit Autovervollständigung und Syntaxhervorhebung. pip installieren mycli Für Python 3 verwenden Sie bitte pip3 installieren mycli Pip kann nicht gefunden werden, bitte installieren Sie: sudo apt installiere python-pip#python2 sudo apt installiere python3-pip Verwenden Sie dann mycli, um auf die Datenbank zuzugreifen: mycli -u Wurzel Viel Spaß beim Abschluss! 4 Referenzen 1. So installieren Sie MySQL unter Linux (YUM und Quellcode-Kompilierung) Zusammenfassen Dies ist das Ende dieses Artikels über das ausführliche Tutorial zum Kompilieren und Installieren von MySQL 8.0.20 aus dem Quellcode. Weitere Informationen zum Kompilieren und Installieren von MySQL 8.0.20 aus dem Quellcode finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Zusammenfassung wichtiger Breakpoint-Debugging-Techniken für JavaScript (empfohlen)
Apache Tika ist eine Bibliothek zur Dateityperken...
Heutzutage werden Registerkarten häufig im Webdes...
In diesem Artikel werden 3 Methoden beschrieben, ...
Inhaltsverzeichnis Szeneneinführung Hohe Reaktion...
In letzter Zeit wurde der Server häufig mit Brute...
Inhaltsverzeichnis Projektverzeichnis Docker-Date...
Ich habe gerade angefangen, React für Projekte zu...
Wenn Sie nicht wissen, wie das System auf dem Com...
DIV+CSS-Struktur Lernen Sie CSS-Layout? Sie beherr...
Im vorherigen Artikel haben wir die Netzwerkerken...
Horizontales Scrollen ist nicht in allen Situation...
Inhaltsverzeichnis 1. Häufige Fehler von Anfänger...
Vorwort: Verwenden Sie die Debugleiste, um den Dok...
Inhaltsverzeichnis 1. Anonyme Slots 2. Benannte S...
HTML besteht aus Tags und Attributen, die zusamme...