Fallstricke und Lösungen für das Upgrade von MySQL 5.7.23 in CentOS 7

Fallstricke und Lösungen für das Upgrade von MySQL 5.7.23 in CentOS 7

Vorwort

Kürzlich bin ich beim Upgrade von MySQL 5.7.23 unter CentOS 7 auf eine Falle gestoßen. Nehmen wir als Beispiel einen auf MySQL 5.7.23 aktualisierten Cluster.

In unserer Umgebung ist der Parameter open_files_limit für die Anzahl der offenen Dateideskriptoren in MySQL 5.6.21 einheitlich auf 65535 konfiguriert, während der Standardwert des in MySQL 5.7.23 unter CentOS 7 installierten Parameters open_files_limit 5000 beträgt.

Andernfalls meldet die Datenbank einen Fehler, wenn in einem Cluster mit einer großen Anzahl von Partitionstabellen die Anzahl der geöffneten Dateien zu groß ist.

Hier sind die Gründe:

1. CentOS 7 installiert MySQL 5.7.23 und die Dienstverwaltung wurde von sysvinit (service mysql start) zu systemd (systemctl start mysqld.service) geändert.

2. Die Konfiguration von Limit unter CentOS 7 wird durch die folgende Konfigurationsdatei bestimmt

Globale Einstellungen: /etc/systemd/system.conf (z. B. DefaultLimitNOFILE=65535)

Serviceeinstellungen: [Service] Der Standardwert ist 5000, und LimitNOFILE sollte auf 65535 geändert werden

【prüfen】

1. Globale Konfigurationsdatei /etc/systemd/system.conf

2. Dienstkonfigurationsdatei /usr/lib/systemd/system/mysqld.service

3. MySQL-Konfigurationsdatei /etc/my.cnf

【abschließend】

1. Wenn Sie den MySQL-Dienst mit systemd verwalten und gleichzeitig den Parameter open_files_limit in den folgenden drei Konfigurationsdateien festlegen, hat die Dienstkonfigurationsdatei am Ende Vorrang

2. Wenn der dienstbezogene Konfigurations-Wert auskommentiert ist, hat die globale Konfigurationsdatei Vorrang.

【Lösung】

1. Einzelgerät-Reparaturmethode, folgen Sie den Schritten unten

#Konfiguration ändern vim /usr/lib/systemd/system/mysqld.service

#Systemctl daemon-reload neu laden

#Starten Sie den Dienst neu, damit die Änderungen wirksam werden systemctl restart mysqld@replica01.service

2. Reparaturmethode für Installationspakete: Ändern Sie die folgenden beiden Quelldateien, erhöhen Sie 5000 auf 65535, verpacken Sie sie neu und geben Sie sie frei, sodass die neue Version standardmäßig dieselbe Konfiguration wie MySQL5.6.21 beibehält

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Ausführliches Tutorial zu Installations- und Upgradeproblemen bei MySQL 5.7.30
  • Upgrade der Docker-Version von MySQL 5.7 auf MySQL 8.0.13, Datenmigration
  • phpstudy2018-Tutorial zum Upgrade von MySQL 5.5 auf 5.7 (mit Bildern und Text)
  • Einige Fallstricke, auf die Entwickler nach dem Upgrade auf MySQL 5.7 achten müssen
  • Best Practices für MySQL-Upgrades
  • So aktualisieren Sie die MySQL-Version in phpStudy auf 5.7.17
  • So aktualisieren Sie MySQL 5.6 auf 5.7 unter Windows
  • Detailliertes Tutorial zum Upgrade der kostenlosen Installationsversion von MySQL 5.7.17 unter Windows (x86, 64 Bit)
  • Einige „Fallstricke“ beim Upgrade der MySQL-Datenbank

<<:  Detailliertes Tutorial zum Bereitstellen von Apollo mit Docker

>>:  Implementierung der Funktion der kreisförmigen prozentualen Fortschrittsbalkenkomponente von Vue

Artikel empfehlen

Beispielcode zur Implementierung der Formularvalidierung mit reinem CSS

In unserem täglichen Geschäft ist die Formularval...

Vollständiger Prozessbericht der Nginx-Reverse-Proxy-Konfiguration

1. Vorbereitung Installieren Sie Tomcat auf dem L...

So erstellen Sie ein standardisiertes VMware-Image für Kubernetes unter Rancher

Wenn wir Kubernetes lernen, müssen wir in der Kub...

Methoden und Schritte für den Zugriff auf die Baidu Maps API mit JavaScript

Inhaltsverzeichnis 1. Baidu Map API-Zugriff 2. Ve...

Über nginx zur Implementierung des Jira-Reverse-Proxys

Zusammenfassung: Nginx-Reverse-Proxy für JIRA kon...

Stellen Sie das Vue-Projekt auf einem Linux-Server bereit

Fall 1 vue-cli erstellt das vue3-Projekt, lädt da...

Implementierung der Vorschaufunktion mehrerer Bild-Uploads auf HTML-Basis

Ich habe vor kurzem ein Skript zum Hochladen mehr...

Nutzungs- und Best-Practice-Handbuch für die Überwachung in Vue3

Inhaltsverzeichnis Vorwort 1. API-Einführung 2. Ü...

Verwenden von Streaming-Abfragen in MySQL, um Daten-OOM zu vermeiden

Inhaltsverzeichnis 1. Einleitung 2. JDBC implemen...