Was ist MySQL Multi-Instance
Vor- und Nachteile mehrerer MySQL-Instanzen:1. Serverressourcen effektiv nutzen: Wenn ein einzelner Server über freie Ressourcen verfügt, können Sie die verbleibenden Ressourcen voll ausnutzen, um weitere MySQL-Instanzen zu erstellen und mehr Dienste bereitzustellen. 2. Serverressourcen sparen: Wenn ein Unternehmen knapp bei Kasse ist, aber mehrere Datenbanken benötigt und jede möglichst unabhängig voneinander Dienste bereitstellen muss oder eine Master-Slave-Synchronisierung erfordert, sind mehrere MySQL-Instanzen ideal. 3. Problem der Ressourcenkonkurrenz: Wenn eine Serviceinstanz eine hohe Parallelität oder langsame Abfragen aufweist, verbraucht die gesamte Instanz mehr Speicher-, CPU-, Festplatten- und IO-Ressourcen, was zu einer Verschlechterung der Qualität der von anderen Instanzen auf dem Server bereitgestellten Dienste führt. Dies entspricht dem Fall, wenn Personen in verschiedenen Schlafzimmern (MySQL-Instanzen) eines Hauses auf die Toilette müssen (Hardware-CPU-, Speicher- und Festplatten-IO-Ressourcen), eine Person die Toilette besetzt und alle anderen warten müssen. MySQL-Installationshandbuch für mehrere Instanzen:Weitere Einzelheiten finden Sie auf der offiziellen Website (https://dev.mysql.com/doc/refman/5.7/en/installing.html).
Bereiten Sie die Umgebung vor. [root@mysql-multi ~]# cat /etc/redhat-release CentOS Linux Version 7.5.1804 (Core) [root@mysql-multi ~]# uname -r 3.10.0-862.el7.x86_64 [root@mysql-multi ~]# Hostname -I 172.16.70.37 [root@mysql-multi ~]# getenforce Permissiv [root@mysql-multi ~]# systemctl status firewalld ● firewalld.service – Firewalld – dynamischer Firewall-Daemon Geladen: geladen (/usr/lib/systemd/system/firewalld.service; deaktiviert; Vendor-Vorgabe: aktiviert) Aktiv: inaktiv (tot) Dokumentation: man:firewalld(1) 23. Jul 14:36:11 mysql-multi systemd[1]: Firewalld wird gestartet - dynamischer Firewall-Daemon... 23. Jul 14:36:12 mysql-multi systemd[1]: Firewalld - dynamischer Firewall-Daemon - gestartet. 23. Jul 15:09:10 mysql-multi systemd[1]: Firewalld wird gestoppt - dynamischer Firewall-Daemon... 23. Jul 15:09:11 mysql-multi systemd[1]: Firewalld - dynamischer Firewall-Daemon - wurde gestoppt. # In der CentOS 7-Version des Systems ist MariaDB standardmäßig installiert, daher müssen Sie es zuerst bereinigen [root@mysql-multi ~]# rpm -qa |grep mariadb mariadb-libs-5.5.56-2.el7.x86_64 oder [root@mysql-multi ~]# yum list installiert | grep mariadb mariadb-libs.x86_64 1:5.5.56-2.el7 @anaconda # Deinstallieren Sie [root@mysql-multi ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 Oder [root@mysql-multi ~]# yum -y remove mariadb-libs.x86_64 Installieren und Konfigurieren mehrerer MySQL-InstanzenDie Installationsmethode für die YUM-Quelle lautet wie folgt: Laden Sie das RPM-Paket von der offiziellen Website herunter: https://downloads.mysql.com/archives/community, und wählen Sie den Download der entsprechenden Version aus. # Laden Sie das RPM-Paket auf den Server hoch [root@mysql-multi ~]# yum install libaio lrzsz tree net-tools -y [root@mysql-multi ~]# ls mysql-community-client-5.7.34-1.el7.x86_64.rpm mysql-community-libs-5.7.34-1.el7.x86_64.rpm mysql-community-common-5.7.34-1.el7.x86_64.rpm mysql-community-server-5.7.34-1.el7.x86_64.rpm # Die Installationsvorgänge müssen in der Reihenfolge ausgeführt werden [root@mysql-multi ~]# rpm -ivh mysql-community-common-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# rpm -ivh mysql-community-libs-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# rpm -ivh mysql-community-client-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# rpm -ivh mysql-community-server-5.7.34-1.el7.x86_64.rpm [root@mysql-multi ~]# yum-Liste installiert | grep mysql mysql-community-client.x86_64 5.7.34-1.el7 installiert mysql-community-common.x86_64 5.7.34-1.el7 installiert mysql-community-libs.x86_64 5.7.34-1.el7 installiert mysql-community-server.x86_64 5.7.34-1.el7 installiert # Instanzverzeichnis erstellen [root@mysql-multi ~]# mkdir -p /data/app/mysql/{3306,3307} [root@mysql-multi ~]# mkdir -p /data/app/mysql/3306/{data,binlog,logs} [root@mysql-multi ~]# mkdir -p /data/app/mysql/3307/{data,binlog,logs} [root@mysql-multi ~]# Baum /data/app/mysql/ /Daten/App/MySQL/ ├── 3306 │ ├── Binlog │ ├── Daten │ └── Protokolle └── 3307 ├── Binlog ├── Daten └── Protokolle # Legen Sie die Verzeichnisbesitzergruppe fest [root@mysql-multi ~]# chown -R mysql:mysql /data/app/mysql [root@mysql-multi ~]# ls -ld /data/app/mysql drwxr-xr-x. 4 mysql mysql 30. Juli 29 18:39 /Daten/App/mysql [root@mysql-multi ~]# ls -ld /data/app drwxr-xr-x. 3 root root 19 Jul 29 18:39 /data/app # Fügen Sie eine neue Konfigurationsdatei my3306.cnf hinzu [root@mysql-multi ~]# mv /etc/my.cnf /etc/my.cnf_bak [root@mysql-multi ~]# cat /etc/my3306.cnf [mysqld] Benutzer = MySQL Port = 3306 Server-ID = 3306 Datenverzeichnis = /data/app/mysql/3306/data Socket = /data/app/mysql/3306/mysql3306.sock symbolische Links = 0 log-fehler = /data/app/mysql/3306/logs/mysqld3306.log pid-Datei = /data/app/mysql/3306/mysqld3306.pid # Fügen Sie eine neue Konfigurationsdatei my3307.cnf hinzu [root@mysql-multi ~]# cp /etc/my3306.cnf /etc/my3307.cnf [root@mysql-multi ~]# sed -i 's/3306/3307/g' /etc/my3307.cnf [root@mysql-multi ~]# cat /etc/my3307.cnf [mysqld] Benutzer = MySQL Port = 3307 Server-ID = 3307 Datenverzeichnis = /data/app/mysql/3307/data Socket = /data/app/mysql/3307/mysql3307.sock symbolische Links = 0 log-fehler = /data/app/mysql/3307/logs/mysqld3307.log pid-Datei = /data/app/mysql/3307/mysqld3307.pid # Sichern Sie die MySQL-Startdienstdatei [root@mysql-multi ~]# mv /usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/mysqld.service_bak # Startdatei mysqld3306.service hinzufügen [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3306.service [Einheit] Beschreibung=MySQL Server Dokumentation=man:mysqld(8) Dokumentation=http://dev.mysql.com/doc/refman/en/using-systemd.html Nach=Netzwerk.Ziel Nach=syslog.target [Installieren] WantedBy=Mehrbenutzer.Ziel [Service] Benutzer=mysql Gruppe=mysql Typ=Forking PIDFile=/data/app/mysql/3306/mysqld3306.pid ZeitüberschreitungSec=0 PermissionsStartOnly=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3306 3306 ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid $MYSQLD_OPTS Umgebungsdatei=-/etc/sysconfig/mysql LimitNOFILE = 5000 Neustart=bei Fehler RestartPreventExitStatus=1 PrivateTmp=false # Startdatei mysqld3307.service hinzufügen [root@mysql-multi ~]# cp /usr/lib/systemd/system/mysqld3306.service /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# sed -i 's/3306/3307/g' /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3307.service [Einheit] Beschreibung=MySQL Server Dokumentation=man:mysqld(8) Dokumentation=http://dev.mysql.com/doc/refman/en/using-systemd.html Nach=Netzwerk.Ziel Nach=syslog.target [Installieren] WantedBy=Mehrbenutzer.Ziel [Service] Benutzer=mysql Gruppe=mysql Typ=Forking PIDFile=/data/app/mysql/3307/mysqld3307.pid ZeitüberschreitungSec=0 PermissionsStartOnly=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3307 3307 ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid $MYSQLD_OPTS Umgebungsdatei=-/etc/sysconfig/mysql LimitNOFILE = 5000 Neustart=bei Fehler RestartPreventExitStatus=1 PrivateTmp=false # Mehrere Instanzen initialisieren 3306, 3307 [root@mysql-multi ~]# mysqld --defaults-file=/etc/my3306.cnf --initialize --user=mysql --datadir=/data/app/mysql/3306/data [root@mysql-multi ~]# mysqld --defaults-file=/etc/my3307.cnf --initialize --user=mysql --datadir=/data/app/mysql/3307/data # Mehrere Instanzen starten 3306, 3307 [root@mysql-multi ~]# systemctl start mysqld3306 [root@mysql-multi ~]# systemctl start mysqld3307 [root@mysql-multi ~]# netstat -nutpl | grep mysql tcp6 0 0 :::3306 :::* LISTEN 128270/mysqld tcp6 0 0 :::3307 :::* LISTEN 128328/mysqld [root@mysql-multi ~]# ps -ef | grep mysql mysql 128270 1 1 11:43 ? 00:00:00 /usr/sbin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid mysql 128328 1 1 11:43 ? 00:00:00 /usr/sbin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid root 128373 949 0 11:43 pts/0 00:00:00 grep --color=auto mysql ================================================ 【Eine weitere MySQL-Instanz hinzufügen】================================================================== # Erstellen Sie ein Verzeichnis und legen Sie den Eigentümer und die Gruppe fest [root@mysql-multi ~]# mkdir -p /data/app/mysql/3308/{data,binlog,logs} [root@mysql-multi ~]# chown -R mysql:mysql /data/app/mysql/3308 [root@mysql-multi ~]# ls -ld /data/app/mysql/3308 drwxr-xr-x. 5 mysql mysql 44 5. Aug. 14:45 /data/app/mysql/3308 # Fügen Sie eine neue Konfigurationsdatei my3308.cnf hinzu [root@mysql-multi ~]# cp /etc/my3306.cnf /etc/my3308.cnf [root@mysql-multi ~]# sed -i 's/3306/3308/g' /etc/my3308.cnf [root@mysql-multi ~]# cat /etc/my3308.cnf [mysqld] Benutzer = MySQL Port = 3308 Server-ID = 3308 Datenverzeichnis = /data/app/mysql/3308/data Socket = /data/app/mysql/3308/mysql3308.sock symbolische Links = 0 log-fehler = /data/app/mysql/3308/logs/mysqld3308.log pid-Datei = /data/app/mysql/3308/mysqld3308.pid # Startdatei mysqld3308.service hinzufügen [root@mysql-multi ~]# cp /usr/lib/systemd/system/mysqld3306.service /usr/lib/systemd/system/mysqld3308.service [root@mysql-multi ~]# sed -i 's/3306/3308/g' /usr/lib/systemd/system/mysqld3308.service [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3308.service [Einheit] Beschreibung=MySQL Server 3308 Dokumentation=man:mysqld(8) Dokumentation=http://dev.mysql.com/doc/refman/en/using-systemd.html Nach=Netzwerk.Ziel Nach=syslog.target [Installieren] WantedBy=Mehrbenutzer.Ziel [Service] Benutzer=mysql Gruppe=mysql Typ=Forking PIDFile=/data/app/mysql/3308/mysqld3308.pid ZeitüberschreitungSec=0 PermissionsStartOnly=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3308 3308 ExecStart=/usr/sbin/mysqld --defaults-file=/etc/my3308.cnf --daemonize --pid-file=/data/app/mysql/3308/mysqld3308.pid $MYSQLD_OPTS Umgebungsdatei=-/etc/sysconfig/mysql LimitNOFILE = 5000 Neustart=bei Fehler RestartPreventExitStatus=1 PrivateTmp=false # Mehrere Instanzen initialisieren 3308 [root@mysql-multi ~]# mysqld --defaults-file=/etc/my3308.cnf --initialize --user=mysql --datadir=/data/app/mysql/3308/data # Mehrere Instanzen starten 3308 [root@mysql-multi ~]# systemctl start mysqld3308 [root@mysql-multi ~]# netstat -nutpl | grep mysql tcp6 0 0 :::3306 :::* LISTEN 5062/mysqld tcp6 0 0 :::3307 :::* LISTEN 5098/mysqld tcp6 0 0 :::3308 :::* LISTEN 5189/mysqld [root@mysql-multi ~]# ps -ef |grep mysql mysql 5062 1 0 14:43 ? 00:00:01 /usr/sbin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid mysql 5098 1 0 14:44 ? 00:00:01 /usr/sbin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid mysql 5189 1 4 14:57 ? 00:00:01 /usr/sbin/mysqld --defaults-file=/etc/my3308.cnf --daemonize --pid-file=/data/app/mysql/3308/mysqld3308.pid Die Methode zur Kompilierung und Installation des Quellcodes ist wie folgt: MySQL-Download: https://downloads.mysql.com/archives/community Boost-Download: https://sourceforge.net/projects/boost/files/boost/1.59.0 Mehrere MySQL-Instanzen: https://dev.mysql.com/doc/refman/5.7/en/multiple-servers.html # Abhängigkeitspakete und Kompilierungssoftware [root@mysql-multi ~]# yum install -y cmake make gcc gcc-c++ openssl openssl-devel ncurses ncurses-devel libaio-devel wget lrzsz tree [root@mysql-multi ~]# rpm -qa ncurses-devel libaio-devel libaio-devel-0.3.109-13.el7.x86_64 ncurses-devel-5.9-14.20130511.el7_4.x86_64 # Laden Sie das Quellcodepaket herunter, laden Sie es hoch, entpacken Sie es, kompilieren und installieren Sie es (vorzugsweise mit Speicher > 8 GB) ls[root@mysql-multi ~]# ls boost_1_59_0.tar.gz mysql-boost-5.7.34.tar.gz [root@mysql-multi ~]# tar xf boost_1_59_0.tar.gz [root@mysql-multi ~]# tar xf mysql-boost-5.7.34.tar.gz [root@mysql-multi ~]# ls boost_1_59_0 boost_1_59_0.tar.gz mysql-5.7.34 mysql-boost-5.7.34.tar.gz [root@mysql-multi ~]# cd mysql-5.7.34/ [root@mysql-multi mysql-5.7.34]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8mb4 \ -DENABLED_LOCAL_INFILE=1 -DWITH_SYSTEMD=1 -DWITH_BOOST=/root/boost_1_59_0 -DEXTRA_CHARSETS=alle ...... ......Wenn am Ende Folgendes angezeigt wird, ist es abgeschlossen-- CMAKE_SHARED_LINKER_FLAGS -- Konfiguration abgeschlossen -- Generierung abgeschlossen -- Build-Dateien wurden geschrieben nach: /root/mysql-5.7.34 Beschreibung der Option: -DCMAKE_INSTALL_PREFIX=/usr/local/mysql # MySQL-Installationsverzeichnis -DDEFAULT_CHARSET=utf8mb4 # Standardzeichenkodierung der Datenbank -DENABLED_LOCAL_INFILE=1 # Datenimport aus dieser Datei zulassen -DWITH_SYSTEMD=1 # Systemd-Skript bereitstellen -DWITH_BOOST=/root/boost_1_59_0 # Quellpfad für Boost -DEXTRA_CHARSETS=all # Alle Zeichensätze installieren [root@mysql-multi mysql-5.7.34]#make -j 4 && make install # make -j 4 bedeutet gleichzeitiges Kompilieren mit CPU4 Kernen: cat /proc/cpuinfo|grep "processor"|wc -l ...... ......Wenn am Ende folgender Inhalt angezeigt wird, ist es abgeschlossen-- Aktuell: /usr/local/app/mysql/mysql-test/mysql-test-run -- Installieren: /usr/local/app/mysql/mysql-test/lib/My/SafeProcess/my_safe_process -- Aktuell: /usr/local/app/mysql/mysql-test/lib/My/SafeProcess/my_safe_process -- Installieren: /usr/local/app/mysql/mysql-test/lib/My/SafeProcess/Base.pm -- Installieren: /usr/local/app/mysql/support-files/mysqld_multi.server -- Installieren: /usr/local/app/mysql/support-files/mysql-log-rotate -- Installieren: /usr/local/app/mysql/support-files/magic -- Installieren: /usr/local/app/mysql/share/aclocal/mysql.m4 -- Installieren: /usr/local/app/mysql/support-files/mysql.server # Instanzverzeichnis erstellen [root@mysql-multi ~]# mkdir -p /data/app/mysql/{3306,3307}/{data,binlog,logs} [root@mysql-multi ~]# Baum /data/app/mysql /Daten/App/MySQL ├── 3306 │ ├── Binlog │ ├── Daten │ └── Protokolle └── 3307 ├── Binlog ├── Daten └── Protokolle # Erstellen Sie einen Benutzer und legen Sie die Verzeichnisbesitzergruppe fest [root@mysql-multi ~]# useradd -M -r -s /sbin/nologin mysql [root@mysql-multi ~]# chown -R mysql:mysql /data/app/mysql [root@mysql-multi ~]# ls -ld /data/app/mysql drwxr-xr-x. 4 mysql mysql 30. Aug. 5 12:17 /Daten/App/mysql # Fügen Sie eine neue Konfigurationsdatei my3306.cnf hinzu [root@mysql-multi ~]# mv /etc/my.cnf /etc/my.cnf_bak [root@mysql-multi ~]# cat /etc/my3306.cnf [mysqld] Benutzer = MySQL Port = 3306 Server-ID = 3306 basedir = /usr/local/mysql Datenverzeichnis = /data/app/mysql/3306/data Socket = /data/app/mysql/3306/mysql3306.sock symbolische Links = 0 log-fehler = /data/app/mysql/3306/logs/mysqld3306.log pid-Datei = /data/app/mysql/3306/mysqld3306.pid Zeichensatzserver = utf8 Standard-Speicher-Engine = INNODB # Fügen Sie eine neue Konfigurationsdatei my3307.cnf hinzu [root@mysql-multi ~]# cp /etc/my3306.cnf /etc/my3307.cnf [root@mysql-multi ~]# sed -i 's/3306/3307/g' /etc/my3307.cnf [root@mysql-multi ~]# cat /etc/my3307.cnf [mysqld] Benutzer = MySQL Port = 3307 Server-ID = 3307 basedir = /usr/local/mysql Datenverzeichnis = /data/app/mysql/3307/data Socket = /data/app/mysql/3307/mysql3307.sock symbolische Links = 0 log-fehler = /data/app/mysql/3307/logs/mysqld3307.log pid-Datei = /data/app/mysql/3307/mysqld3307.pid Zeichensatzserver = utf8 Standard-Speicher-Engine = INNODB # Standardisierungsvorgänge nach der Installation (Einstellen von Umgebungsvariablen, Ausgeben von Header- und Bibliotheksdateien, Einrichten von Man-Pfaden) [root@mysql-multi ~]# echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile.d/mysql.sh [root@mysql-multi ~]# chmod +x /etc/profile.d/mysql.sh [root@mysql-multi ~]# Quelle /etc/profile.d/mysql.sh [root@mysql-multi ~]# echo "MANPATH /usr/local/mysql/man" >> /etc/man.config [root@mysql-multi ~]# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf [root@mysql-multi ~]# ldconfig [root@mysql-multi ~]# ln -s /usr/local/mysql/include /usr/include/mysql # Instanzen 3306 und 3307 im systemd-Modus hinzufügen [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3306.service [Einheit] Beschreibung=MySQL Server Dokumentation=man:mysqld(8) Dokumentation=http://dev.mysql.com/doc/refman/en/using-systemd.html Nach=Netzwerk.Ziel Nach=syslog.target [Installieren] WantedBy=Mehrbenutzer.Ziel [Service] Benutzer=mysql Gruppe=mysql Typ=Forking PIDFile=/data/app/mysql/3306/mysqld3306.pid ZeitüberschreitungSec=0 PermissionsStartOnly=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3306 3306 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid $MYSQLD_OPTS Umgebungsdatei=-/etc/sysconfig/mysql LimitNOFILE = 5000 Neustart=bei Fehler RestartPreventExitStatus=1 PrivateTmp=false [root@mysql-multi ~]# cp /usr/lib/systemd/system/mysqld3306.service /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# sed -i 's/3306/3307/g' /usr/lib/systemd/system/mysqld3307.service [root@mysql-multi ~]# cat /usr/lib/systemd/system/mysqld3307.service [Einheit] Beschreibung=MySQL Server Dokumentation=man:mysqld(8) Dokumentation=http://dev.mysql.com/doc/refman/en/using-systemd.html Nach=Netzwerk.Ziel Nach=syslog.target [Installieren] WantedBy=Mehrbenutzer.Ziel [Service] Benutzer=mysql Gruppe=mysql Typ=Forking PIDFile=/data/app/mysql/3307/mysqld3307.pid ZeitüberschreitungSec=0 PermissionsStartOnly=true #ExecStartPre=/usr/bin/mysqld_pre_systemd_3307 3307 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid $MYSQLD_OPTS Umgebungsdatei=-/etc/sysconfig/mysql LimitNOFILE = 5000 Neustart=bei Fehler RestartPreventExitStatus=1 PrivateTmp=false # Instanzen 3306, 3307 initialisieren [root@mysql-multi ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3306.cnf --initialize --basedir=/usr/local/mysql --user=mysql --datadir=/data/app/mysql/3306/data [root@mysql-multi ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3307.cnf --initialize --basedir=/usr/local/mysql --user=mysql --datadir=/data/app/mysql/3307/data # Instanz 3306, 3307 Dienste starten (Start|Stopp|Neustart|Status) [root@mysql-multi ~]# systemctl start mysqld3306 [root@mysql-multi ~]# systemctl start mysqld3307 [root@mysql-multi ~]# netstat -nuptl | grep mysql tcp6 0 0 :::3306 :::* LISTEN 27165/mysqld tcp6 0 0 :::3307 :::* LISTEN 27201/mysqld [root@mysql-multi ~]# ps -ef | grep mysql mysql 27165 1 2 17:03 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3306.cnf --daemonize --pid-file=/data/app/mysql/3306/mysqld3306.pid mysql 27201 1 2 17:03 ? 00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/etc/my3307.cnf --daemonize --pid-file=/data/app/mysql/3307/mysqld3307.pid Ändern Sie das Passwort der MySQL-Instanz und testen Sie die Anmeldung. # Holen Sie sich das anfängliche Passwort der Instanz [root@mysql-multi ~]# grep 'temporäres Passwort' /data/app/mysql/3306/logs/mysqld3306.log 2021-08-05T08:52:37.904630Z 1 [Hinweis] Ein temporäres Passwort wird für root@localhost generiert: ,&YrsLryq3Ll [root@mysql-multi ~]# grep 'temporäres Passwort' /data/app/mysql/3307/logs/mysqld3307.log 2021-08-05T08:52:48.082526Z 1 [Hinweis] Ein temporäres Passwort wird für root@localhost generiert: OvxKu,su=4O1 # Ändern Sie das Instanzkennwort [root@mysql-multi ~]# mysqladmin -p -S /data/app/mysql/3306/mysql3306.sock password Passwort eingeben: # Geben Sie das ursprüngliche Passwort ein Neues Passwort: # Geben Sie das neue Passwort ein 123456 Neues Passwort bestätigen: # Geben Sie das neue Passwort 123456 erneut ein -------------------------------------------------------------------------------------------------- # oder Shell> mysql -uroot -p /data/app/mysql/3306/mysql3306.sock mysql> ALTER USER 'root'@'localhost' IDENTIFIZIERT DURCH '123456'; -------------------------------------------------------------------------------------------------- [root@mysql-multi ~]# mysqladmin -p -S /data/app/mysql/3306/mysql3307.sock Passwort Passwort eingeben: # Geben Sie das ursprüngliche Passwort ein Neues Passwort: # Geben Sie das neue Passwort 654321 ein Neues Passwort bestätigen: # Geben Sie das neue Passwort 654321 erneut ein # Testanmeldung [root@mysql-multi ~]# mysql -uroot -p -S /data/app/mysql/3306/mysql3306.sock Passwort eingeben: # Passwort eingeben 123456 [root@mysql-multi ~]# mysql -uroot -p -S /data/app/mysql/3307/mysql3307.sock Passwort eingeben: # Passwort eingeben 654321 # Stoppen Sie die Instanz [root@mysql-multi ~]# mysqladmin -uroot -p -S /data/app/mysql/3306/mysql3306.sock shutdown Passwort eingeben: # Passwort eingeben 123456 [root@mysql-multi ~]# mysqladmin -uroot -p -S /data/app/mysql/3307/mysql3307.sock herunterfahren Passwort eingeben: # Passwort eingeben 654321 An diesem Punkt wurden mehrere MySQL-Instanzen implementiert! Dies ist das Ende dieses Artikels über MySQL-Mehrinstanzbereitstellungsdatensätze unter Linux. Weitere relevante Inhalte zur MySQL-Mehrinstanzbereitstellung finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung zum Erkennen und Verhindern von JavaScript-Endlosschleifen
SQL-Anweisungen (Structured Query Language), also...
Vorwort Bei der Entwicklung tatsächlicher Projekt...
Eine einfach verkettete Liste kann nur vom Anfang...
/etc/fstab Partitionen/Festplatten automatisch mo...
Während der Django-Webentwicklung wird beim Schre...
1. Reproduktion des Problems: Zählen Sie die Gesa...
So erstellen Sie eine virtuelle Linux-Maschine in...
Inhaltsverzeichnis 1. Installationsvorbereitung 1...
Neueste Version von MySQL 8.0.22 zur Kennwortwied...
Klassische Farbkombinationen vermitteln Kraft und ...
1. Einleitung Personen, die nicht an die englisch...
1. Zunächst müssen wir zwischen der Tomcat-Protok...
Inhaltsverzeichnis Unkontrollierte Komponenten Ko...
VMware-Version: VMware-Workstation-Full-16 VMware...
mysql bereinigt Binlog-Protokolle korrekt Vorwort...