Beispielanalyse von MySQL-Start- und Verbindungsmethoden

Beispielanalyse von MySQL-Start- und Verbindungsmethoden

In diesem Artikel wird anhand von Beispielen der Start von MySQL und die Verbindung damit beschrieben. Teilen Sie uns die Einzelheiten zu Ihrer Information mit:

Der MySQL-Betrieb besteht aus zwei Teilen, einem Teil ist das serverseitige Programm mysqld und einem Teil ist das clientseitige Programm mysql. Erst wenn mysqld gestartet ist, kann der MySQL-Client eine Verbindung damit herstellen. Es gibt vier Möglichkeiten, mysqld zu starten, und es gibt auch vier Möglichkeiten, eine Verbindung zu mysql herzustellen.

So starten Sie mysqld

Methode 1: mysqld

mysqld ist ein ausführbarer Befehl und auch ein serverseitiges Programm. Das Starten dieses Programms entspricht dem Starten des MySQL-Serverprozesses. Dieser Befehl wird jedoch nicht häufig verwendet. Häufig wird der Befehl mysqld_safe verwendet.

Befehlsformat:
mysqld [OPTIONEN]

wie:
mysqld --defaults-file=/etc/my.cnf

Hilfe anzeigen:
mysqld --verbose --help

Methode 2: mysqld_safe

mysqld_safe ist ein Startskript, das indirekt auf mysqld verweist. Beim Starten des Skripts mysqld_safe wird beim Starten des MySQL-Serverprozesses auch ein Daemon-Prozess gestartet, der mysqld überwacht. Wenn der mysqld-Dienst hängt, wird sofort ein mysqld-Dienst neu gestartet.

Darüber hinaus gibt die Startmethode mysqld_safe auch das Fehlerprotokoll und andere Diagnoseinformationen des laufenden Prozesses in eine Datei aus, was uns die Fehlersuche und -lösung erleichtert. Diese Startmethode ist die gebräuchlichste.

Befehlsformat:
mysqld_safe [OPTIONEN] &

wie:
mysqld_safe --defaults-file=/etc/my.cnf &

Hilfe anzeigen:
mysqld_safe --Hilfe

Methode 3: mysqld_multi

Wenn Sie mehrere MySQL-Instanzen auf einem einzigen Host ausführen müssen, können Sie mysqld_multi verwenden, um verschiedene MySQL-Dienste zu verwalten. Diese Startmethode ist für MySQL-Cluster sehr hilfreich.

Befehlsformat:
mysqld_multi [OPTIONEN] {start|neu laden|stoppen|melden} [GNR,GNR,GNR...]

Hilfe anzeigen:
mysqld_multi --Hilfe

Methode 4: mysql.server

mysql.server ist auch ein Startskript. Es ruft indirekt mysqld_safe auf. Wenn Sie mysql.server aufrufen, können Sie das Serverprogramm starten, indem Sie am Ende den Startparameter angeben. Dieser Startmodus wird im Allgemeinen von MySQL generiert, das über das RPM-Paket installiert wurde.

Die Datei mysql.server ist eigentlich eine Linkdatei. Die eigentliche Datei ist ../support-files/mysql.server

Befehlsformat:
mysql.server starten|neu starten|stoppen|status

MySQL-Verbindungsmethode

Methode 1: TCP/IP-Sockets

Es kann sowohl in Unix-ähnlichen als auch in Windows-Betriebssystemen verwendet werden. TCP/IP-Socket ist ein Netzwerkprotokoll. Wenn der MySQL-Server startet, lauscht er auf einem Port. Wenn der Client die Verbindung startet, kann er eine Verbindung herstellen, indem er die Host-IP+Port des MySQL-Servers angibt.

In diesem Kommunikationsmodus können der MySQL-Server und der Client auf verschiedenen Hosts bereitgestellt werden. Dies ist auch die am häufigsten verwendete Verbindungsmethode.

mysql -h Host-IP -P Port -u Benutzer -p
wie:
mysql -h127.0.0.1 -P3306 -uroot -p 

So starten Sie MySQL und stellen eine Verbindung her

Methode 2: Unix-Sockets

Nur auf Unix-ähnlichen Betriebssystemen verfügbar. Unix-Sockets sind kein Netzwerkprotokoll und können nur verwendet werden, wenn sich MySQL-Server und -Client auf demselben Host befinden.

Wenn wir beim Starten des Client-Programms den Hostnamen als „localhost“ angeben oder den Startparameter „--protocol=socket“ angeben, können das Server-Programm und das Client-Programm über die Unix-Domain-Socket-Datei kommunizieren.

Der standardmäßige Unix-Domain-Socket-Dateipfad, auf den das MySQL-Serverprogramm lauscht, ist /tmp/mysql.sock, und das Client-Programm stellt standardmäßig auch eine Verbindung zu dieser Unix-Domain-Socket-Datei her.

1. mysql -uroot -p //Standardmäßig wird über Socket kommuniziert, Standard ist localhost
2. mysql -hlocalhost -uroot -p
3. mysql -S Socket-Dateipfad -uroot -p
wie:
mysql -S /var/run/mysqld/mysqld.sock -uroot -p 

So starten Sie MySQL und stellen eine Verbindung her

So starten Sie MySQL und stellen eine Verbindung her

So starten Sie MySQL und stellen eine Verbindung her

Zeigen Sie den Speicherort der Socket-Datei an:
Variablen wie „Socket“ anzeigen; 

So starten Sie MySQL und stellen eine Verbindung her

Methode 3: Named Pipe

Es kann nur unter Windows-ähnlichen Betriebssystemen verwendet werden und nur, wenn sich der MySQL-Server und der Client auf demselben Host befinden.

Sie müssen dem Befehl, der das Serverprogramm startet, den Parameter --enable-named-pipe hinzufügen und anschließend dem Befehl, der das Clientprogramm startet, den Parameter --pipe oder --protocol=pipe hinzufügen.

–enable-named-pipe=ein/aus;

Methode 4: Gemeinsam genutzter Speicher

Es kann nur unter Windows-ähnlichen Betriebssystemen verwendet werden und nur, wenn sich der MySQL-Server und der Client auf demselben Host befinden.

Sie müssen dem Befehl, der das Serverprogramm startet, den Parameter --shared-memory hinzufügen. Nachdem der Server erfolgreich gestartet wurde, wird der gemeinsame Speicher zur Standardverbindungsmethode für lokale Clientprogramme. Wir können dem Befehl, der das Clientprogramm startet, jedoch auch den Parameter --protocol=memory hinzufügen, um die Verwendung des gemeinsamen Speichers für die Kommunikation explizit anzugeben.

–shared-memory=ein/aus;

Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen auf dieser Site ansehen: „MySQL-Abfragekenntnisse“, „Zusammenfassung der allgemeinen MySQL-Funktionen“, „MySQL-Protokolloperationskenntnisse“, „Zusammenfassung der MySQL-Transaktionsoperationskenntnisse“, „MySQL-gespeicherte Prozedurkenntnisse“ und „Zusammenfassung der MySQL-Datenbanksperrenkenntnisse“.

Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist.

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der MySQL-Startoptionen und Beispiele für Systemvariablen
  • So starten Sie mehrere MySQL-Instanzen in CentOS 7.0 (mysql-5.7.21)
  • Beispielerklärung für langsame MySQL-Abfragen und -Protokolle
  • MySQL-Beispiel-Tutorial: Ergebnisse auswählen, um ein Update durchzuführen
  • Ein vollständiges Beispiel für die Abfrage von Batchdaten aus einer Tabelle durch MySQL und deren Einfügen in eine andere Tabelle
  • Springboot konfiguriert MySQL-Verbindungsbeispielcode
  • Detaillierte Erklärung zum ordnungsgemäßen Löschen einer großen Tabelle in MySQL
  • MySQL-Trigger-Verwendungsszenarien und Methodenbeispiele
  • Eine kurze Analyse von SQL-Beispielen zum Auffinden nicht festgeschriebener Transaktionen in MySQL
  • Analyse und Lösung des Problems, dass die MySQL-Instanz nicht gestartet werden kann

<<:  So zeigen Sie den Startparameterbefehl „Docker Run“ an (empfohlen)

>>:  Detaillierte Bereitstellung des Alibaba Cloud Servers (grafisches Tutorial)

Artikel empfehlen

Erste Schritte mit Mysql - SQL-Ausführungsprozess

Inhaltsverzeichnis 1. Prozess 2. Kernarchitektur ...

JavaScript zum Erzielen eines dynamischen Tabelleneffekts

In diesem Artikel wird der spezifische Code für J...

Fallstudie zu JavaScript-Style-Objekten und CurrentStyle-Objekten

1. Stilobjekt Das Stilobjekt stellt eine einzelne...

Analysieren von AB-Leistungstestergebnissen unter Apache

Ich habe immer Loadrunner für Leistungstests verw...

SQL-Implementierung von LeetCode (184. Das höchste Gehalt der Abteilung)

[LeetCode] 184. Abteilung Höchstes Gehalt Die Mit...

Vue implementiert ein einfaches Einkaufswagenbeispiel

In diesem Artikelbeispiel wird der spezifische Co...

So beheben Sie den abnormalen Start von mysql5.7.21

Ein Kollege meldete, dass eine MySQL-Instanz aufg...

JavaScript-Grundlagenoperatoren

Inhaltsverzeichnis 1. Betreiber Zusammenfassen 1....

So implementieren Sie das N-Grid-Layout in CSS

Häufige Anwendungsszenarien Die Schnittstellen ak...

Schritte zur Bereitstellungsmethode für Docker Stack für Webcluster

Docker wird immer ausgereifter und seine Funktion...

Zusammenfassung der verschiedenen Verwendungsmöglichkeiten von JSON.stringify

Vorwort Jeder, der schon einmal JSON verwendet ha...