Detailliertes Tutorial zum Anpassen des Installationspfads der MySQL-Version 5.7.18 (Installation von Binärpaketen)

Detailliertes Tutorial zum Anpassen des Installationspfads der MySQL-Version 5.7.18 (Installation von Binärpaketen)

Installationspfad: /application/mysql-5.7.18

1. Vorbereitende Maßnahmen

MySQL-Abhängigkeit

Abonnieren
yum install -y libaio

Erstellen Sie einen Benutzer mysql und führen Sie mysql als dieser Benutzer aus

useradd -s /bin/false -M mysql

Laden Sie das MySQL-Binärpaket herunter und entpacken Sie es

CD /Werkzeuge
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
tar -zxf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /Anwendung/

Wechseln Sie in das Verzeichnis /application, kürzen Sie den MySQL-Ordnernamen und erstellen Sie einen Softlink zum MySQL-Verzeichnis

cd /Anwendung/
mv mysql-5.7.18-linux-glibc2.5-x86_64/mysql-5.7.18
ln -s mysql-5.7.18/mysql

Erstellen Sie MySQL-Dateien im MySQL-Verzeichnis. Die Ordnerberechtigungen sind 750. Legen Sie rekursiv die Gruppe und den Benutzer des MySQL-Verzeichnisses fest.

mkdir mysql/mysql-dateien
chmod 750 mysql/mysql-dateien
chown -R mysql:mysql mysql-5.7.18/

2. Operationen im MySQL-Verzeichnis

MySQL-CD

Initialisieren der Datenbank

Im MySQL-Verzeichnis wird ein Datenverzeichnis generiert, in dem das Datenbankverzeichnis gespeichert wird

bin/mysqld --initialize --user=mysql --basedir=/Anwendung/mysql --datadir=/Anwendung/mysql/Daten

Am Ende der letzten Zeile des zurückgegebenen Ergebnisses befindet sich ein zufälliges Passwort. Ich habe es aufgeschrieben: wa0I:1w?V--a

2017-04-28T02:49:00.853710Z 1 [Hinweis] Ein temporäres Passwort wird für root@localhost generiert: wa0I:1w?V--a

Wenn Sie das Standardkennwort leer lassen möchten, ersetzen Sie die Option --initialize durch die Option --initialize-insecure.

bin/mysqld --initialize-insecure --user=mysql --basedir=/Anwendung/mysql --datadir=/Anwendung/mysql/Daten

SSL installieren

bin/mysql_ssl_rsa_setup --datadir /anwendung/mysql/data/

Geben Sie den Pfad zum Datenverzeichnis an

Ändern des Benutzers und der Gruppe

chown -R root.
chown -R MySQL-Daten MySQL-Dateien

Mit Ausnahme des Datenverzeichnisses und des Verzeichnisses „MySQL-Dateien“ unter dem Verzeichnis „MySQL“ wird der Besitzer aller anderen Dateien auf „Root“ geändert.

Ändern der Konfigurationsdatei

sed -i 's/^datadir=\/var\/lib\/mysql/datadir=\/application\/mysql\/data/g' /etc/my.cnf
sed -i 's/^socket=\/var\/lib\/mysql\/mysql.sock/socket=\/tmp\/mysql.sock/g' /etc/my.cnf
sed -i 's/^log-error=\/var\/log\/mariadb\/mariadb.log/log-error=\/application\/mysql\/data\/err.log/g' /etc/my.cnf
sed -i 's/^pid-file=\/var\/run\/mariadb\/mariadb.pid/pid-file=\/application\/mysql\/data\/mysql.pid/g' /etc/my.cnf

ist gleichbedeutend mit:

vi /etc/meine.cnf
datadir=/Anwendung/MySQL/Daten
socket=/tmp/mysql.sock
log-error=/Anwendung/mysql/Daten/err.log
pid-Datei=/Anwendung/mysql/Daten/mysql.pid
/etc/my.cnf Inhalt:
[mysqld]
datadir=/Anwendung/MySQL/Daten
socket=/tmp/mysql.sock
# Das Deaktivieren symbolischer Links wird empfohlen, um verschiedene Sicherheitsrisiken zu vermeiden
symbolische Links = 0
# Benutzer- und Gruppeneinstellungen werden ignoriert, wenn systemd verwendet wird.
# Wenn Sie mysqld unter einem anderen Benutzer oder einer anderen Gruppe ausführen müssen,
# Passen Sie Ihre Systemd-Unit-Datei für MariaDB entsprechend der
# Anweisungen unter http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/Anwendung/mysql/Daten/err.log
pid-Datei=/Anwendung/mysql/Daten/mysql.pid
#
# alle Dateien aus dem Konfigurationsverzeichnis einbinden
#
!includedir /etc/my.cnf.d

Startprogramm kopieren

cp support-files/mysql.server /etc/init.d/mysql

Kopieren Sie das MySQL-Startprogramm in das Verzeichnis /etc/init.d/, um das Programm zu starten

Bearbeiten Sie die Startdatei und konfigurieren Sie das Startverzeichnis

Methode 1:

Die Idee besteht darin, den von der Konfigurationsdatei bereitgestellten Variablen Werte zuzuweisen. Ärgerlicher.

sed -i 's/^basedir=/basedir=\/Anwendung\/mysql/g' /etc/init.d/mysql
sed -i 's/^datadir=/datadir=\/Anwendung\/mysql\/data/g' /etc/init.d/mysql
sed -i 's/^mysqld_pid_file_path=/mysqld_pid_file_path=\/Anwendung\/mysql\/Daten\/mysql.pid/g' /etc/init.d/mysql

Dies entspricht dem Ersetzen der Zeilen 45 und 46.

basedir=
Datenverzeichnis=
mysqld_pid_file_path=

Ersetzen durch

basedir=/Anwendung/MySQL
datadir=/Anwendung/MySQL/Daten
mysqld_pid_file_path=/Anwendung/mysql/Daten/mysql.pid

Methode 2 (empfohlen):

Die Idee besteht darin, die Standardadresse des Skripts (/usr/local/mysql) direkt durch einen benutzerdefinierten Pfad (/application/mysql) zu ersetzen, sodass der Variablen kein Wert zugewiesen werden muss.

sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysql

An diesem Punkt ist die MySQL-Installation abgeschlossen und kann normal gestartet werden

3. Spätes Ende

Befehl zum Erstellen eines Softlinks

Erstellen Sie einen Softlink vom MySQL-Befehl zum Verzeichnis der Umgebungsvariablen, damit Benutzer den entsprechenden Befehl in der Variablen finden können

ln -s /Anwendung/mysql/bin/* /usr/local/sbin

Melden Sie sich bei MySQL an

[root@www mysql]# mysql -u root -p

Passwort eingeben: #Geben Sie das zuvor gespeicherte zufällige Passwort drRR0 ein

...

mysql> #Erfolgreich bei der MySQL-Konsole angemeldet

SQL-Anweisung zum Ändern des Kennworts

mysql> Benutzer „root“@„localhost“ ändern, identifiziert durch „NewPassWord“;

#Ändern Sie das Passwort in NewPassWord

Abfrage OK, 0 Zeilen betroffen (0,01 Sek.) #Änderung erfolgreich

Geben Sie quit oder Strg+d ein, um zu beenden

mysql> beenden
Tschüss
[root@www mysql]#
oder
mysql> ^Tschüs
[root@www mysql]#

4. Allgemeine Befehle

Geben Sie mysql ein

mysql -u root -p

Starten Sie MySQL

Dienst MySQL starten

Stoppen Sie MySQL

Dienst MySQL stoppen

Starten Sie MySQL neu

Dienst MySQL Neustart

Oben finden Sie ein ausführliches Tutorial zum benutzerdefinierten Installationspfad der MySQL-Version 5.7.18 (Installation von Binärpaketen), das vom Herausgeber vorgestellt wurde. Ich hoffe, es wird für alle hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Tutorial zur Installation des MySQL 5.7.18-Binärpakets unter Linux (ohne Standardkonfigurationsdatei my_default.cnf)
  • Bereitstellen der binären MySQL 5.7.17-Installation und der Multi-Instance-Konfiguration auf CentOS 6.5
  • So installieren Sie die binäre Version von mysql5.7.24 auf Centos 7 und wie Sie das Problem lösen
  • Centos7.5 installiert die Bereitstellung des binären Pakets mysql5.7.24
  • Detailliertes Tutorial zur Installation der generischen Binärversion von MySQL 5.7.11 für Linux in CentOS 7 über die Befehlszeile
  • Tutorial zur Installation von MySQL 5.6.20 mit dem binären Universalpaket von Linux
  • Installieren Sie mysql5.6 im Ubuntu-System (über Binärdatei)
  • MySQL 5.7.19 neueste Binärinstallation
  • MySQL 5.6.24 (binär) automatisches Installationsskript unter Linux
  • Der gesamte Prozessbericht der MySQL-Binärinstallation und -Sicherung

<<:  Nginx verwendet ctx, um Datenfreigabe- und Kontextänderungsfunktionen zu realisieren

>>:  So verhindern Sie, dass sich vsftpd-Benutzer über SSH anmelden

Artikel empfehlen

CSS implementiert fünf gängige 2D-Transformationen

2D-Transformationen in CSS ermöglichen es uns, ei...

Die konkrete Umsetzung des JavaScript-exklusiven Denkens

Im vorherigen Blog hat Xiao Xiong die Methoden ve...

Implementierung des Vue 3.x-Projekts basierend auf Vite2.x

Erstellen eines Vue 3.x-Projekts npm init @vitejs...

Lizenzschlüssel für VMware Workstation Pro 16 mit Nutzungs-Tutorial

VMware Workstation ist eine leistungsstarke virtu...

PNG-Alpha-Transparenz in IE6 (vollständige Sammlung)

Viele Leute sagen, dass IE6 PNG-Transparenz nicht...

So konfigurieren Sie MySQL8 in Nacos

1. Erstellen Sie die MySQL-Datenbank nacos_config...

js verwendet Cookies, um die Seitenvorgänge des Benutzers zu speichern

Vorwort Während des Entwicklungsprozesses stoßen ...

Beispiel einer JSON-Ausgabe im HTML-Format (Testschnittstelle)

Um die JSON-Daten in einem schönen eingerückten F...

Nach dem Docker-Lauf ist der Status immer „Beendet“

füge -it hinzu docker run -it -name test -d nginx...

So blockieren Sie IP und IP-Bereich in Nginx

Vorne geschrieben Nginx ist nicht nur ein Reverse...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.22

Dieser Artikel dokumentiert die Installation und ...

Unterschied und Implementierung von JavaScript Anti-Shake und Throttling

Inhaltsverzeichnis 1. Anti-Shake 2. Drosselung 3....