MySql verwendet Skip-Name-Resolve, um das Problem langsamer externer Netzwerkverbindungen des Clients zu lösen

MySql verwendet Skip-Name-Resolve, um das Problem langsamer externer Netzwerkverbindungen des Clients zu lösen

Das auf Tencent Cloud erstellte MySQL ist immer sehr langsam, wenn es mit Navicat auf dem Entwicklungscomputer aufgerufen wird. Es stellt sich heraus, dass Mysql eine Domänennamenauflösung für die angeforderte Adresse durchführt. Der Entwicklungscomputer hat keinen Domänennamen und ist daher sehr langsam. Verwenden Sie Folgendes, um das Problem zu lösen

[mysqld]
Namensauflösung überspringen
Skip-Grant-Tabellen

Offizielle Erklärung

Wie MySQL
Wenn ein neuer Thread sich mit mysqld verbindet, wird mysqld
Erzeugen Sie einen neuen Thread, um die Anfrage zu bearbeiten. Dieser Thread prüft zunächst
wenn der Hostname im Hostnamen-Cache ist. Wenn nicht, ruft der Thread auf
gethostbyaddr_r() und gethostbyname_r(), um den Hostnamen aufzulösen. Wenn
Das Betriebssystem unterstützt die oben genannten threadsicheren Aufrufe nicht.
Der Thread sperrt ein Mutex und ruft gethostbyaddr() und gethostbyname() auf
stattdessen. Beachten Sie, dass in diesem Fall kein anderer Thread andere
Hostnamen, die nicht im Hostnamen-Cache sind, bis der erste Thread
bereit. Sie können die DNS-Hostsuche deaktivieren, indem Sie mysqld mit
–skip-name-resolve. In diesem Fall können Sie jedoch nur IP-Namen in
die MySQL-Berechtigungstabellen. Wenn Sie einen sehr langsamen DNS und viele
Hosts können Sie die Leistung steigern, indem Sie entweder die DNS-Suche deaktivieren
mit –skip-name-resolve oder durch Erhöhen der HOST_CACHE_SIZE-Definition
(Standard: 128) und kompilieren Sie mysqld neu. Sie können den Hostnamen deaktivieren
Cache mit –skip-host-cache. Sie können den Hostnamen-Cache löschen mit
FLUSH HOSTS oder mysqladmin flush-hosts. Wenn Sie nicht zulassen möchten,
Verbindungen über TCP/IP können Sie herstellen, indem Sie mysqld starten mit
--skip-networking.

Laut Dokumentation ist die Verbindung sehr langsam, wenn Ihr MySQL-Host DNS sehr langsam abfragt oder viele Client-Hosts vorhanden sind. Da unsere Entwicklungsmaschine keine Verbindung zum externen Netzwerk herstellen kann, kann die DNS-Auflösung nicht abgeschlossen werden, was erklärt, warum die Verbindung so langsam ist. Beachten Sie gleichzeitig, dass nach dem Hinzufügen dieses Konfigurationsparameters das Hostfeld in der MySQL-Autorisierungstabelle nicht den Domänennamen, sondern nur die IP-Adresse verwenden kann, da dies dazu führt, dass die Domänennamenauflösung verboten wird.

Zusammenfassen

Oben habe ich Ihnen erklärt, wie MySql mithilfe von Skip-Name-Resolve das Problem langsamer externer Netzwerkverbindungen des Clients löst. Ich hoffe, es hilft Ihnen weiter. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Probleme und Lösungen bei Fehler 08001 bei der Verknüpfung mit MySQL in IDEA und keiner Tabellenanzeige nach erfolgreicher Verbindung
  • Nach der Installation von Navicat in MySQL wird 2059 angezeigt: Authentifizierungs-Plugin und Docker für lokale virtuelle Maschinen sowie Remote-Link-Server
  • Python pymysql Link Datenbankabfrageergebnisse in Dataframe-Instanz konvertiert
  • Detaillierte Erläuterung von MySQL-Abfragebeispielen für mehrere Tabellen [Linkabfrage, Unterabfrage usw.]
  • Beispieloperation MySQL Kurzlink
  • Zusammenfassung des Installationsprozesses von MySql 8.0.11 und der beim Verknüpfen mit Navicat aufgetretenen Probleme
  • Detaillierte Erklärung zur Verwendung von MySQL-Gruppenlinks
  • So verwenden Sie einen SSH-Tunnel, um eine Verbindung zum MySQL-Server herzustellen
  • So zeigen Sie MySQL-Links an und löschen abnormale Links

<<:  So zeigen Sie Docker-Containerprotokolle an und bereinigen sie (getestet und effektiv)

>>:  Der gesamte Prozess der Verwendung von node.js Express zum automatischen Erstellen des Projekts

Artikel empfehlen

Teilen Sie 20 hervorragende Beispiele für Webformular-Design

Sophie Hardach Kai von Clyde Quay 37 Ost Seifenkis...

TypeScript-Union-Typen, Schnittmengentypen und Typwächter

Inhaltsverzeichnis 1. Union-Typ 2. Crossover-Typ ...

Tutorial zur Installation und Nutzungskonfiguration von Docker+nacos+seata1.3.0

Ich habe vorher einen Tag damit verbracht. Obwohl...

Einführung in Keyword-Design-Methoden im Webdesign

Häufig ignorieren wir beim Erstellen der Homepage ...

So schreiben Sie ein MySQL-Sicherungsskript

Vorwort: Die Bedeutung einer Datenbanksicherung l...

Kann CSS auf diese Weise verwendet werden? Die Kunst wunderlicher Farbverläufe

Im vorherigen Artikel – Der Charme einer Zeile CS...

Detaillierte Schritte zur Installation und Konfiguration von MySQL 5.7

1. MySQL herunterladen 1. Melden Sie sich auf der...

Implementierung der vertikalen Zentrierung mit unbekannter Höhe in CSS

Dieser Artikel stellt hauptsächlich die Implement...

So erstellen Sie eine Ansicht für mehrere Tabellen in MySQL

Erstellen Sie in MySQL eine Ansicht für zwei oder...