suchen
HeimBetrieb und InstandhaltungBetrieb und Wartung von LinuxEine ausführliche Einführung zur Optimierung von MySQL unter Linux

In diesem Artikel werden hauptsächlich relevante Informationen zu MySQL-Optimierungsbeispielen in Linux vorgestellt. Freunde in Not können sich auf

Linux-Paar beziehen. Detaillierte Erklärung von MySQL Optimierungsbeispiele

vim /etc/my.cnf Im Folgenden wird nur der Inhalt des Absatzes [mysqld] in der Datei my.cnf aufgeführt. Der Inhalt anderer Absätze hat kaum Auswirkungen auf die Laufleistung von MySQL, also vorerst vernachlässigen.

[mysqld]
port = 3306
serverid = 1
socket = /tmp/mysql.sock
skip-locking

Vermeiden Sie die externe Sperrung von MySQL, reduzieren Sie das Fehlerrisiko und verbessern Sie die Stabilität.

skip-name-resolve

Verbieten Sie MySQL die DNS-Auflösung für externe Verbindungen. Durch die Verwendung dieser Option kann MySQL Zeit für die DNS-Auflösung sparen. Es ist jedoch zu beachten, dass bei aktivierter Option alle Remote-Host-Verbindungsberechtigungen IP-Adressen verwenden müssen, da MySQL sonst Verbindungsanfragen nicht normal verarbeiten kann!

back_log = 384

Der Wert des back_log-Parameters gibt an, wie viele Anfragen in kurzer Zeit im Stack gespeichert werden können, bevor MySQL vorübergehend nicht mehr auf neue Anfragen reagiert. Wenn das System in kurzer Zeit viele Verbindungen hat, müssen Sie den Wert dieses Parameters erhöhen, der die Größe der Überwachungs-Warteschlange für eingehende TCP/IP-Verbindungen angibt. Verschiedene Betriebssysteme haben ihre eigenen Grenzen für diese Warteschlangengröße. Der Versuch, back_log auf einen höheren Wert als den Grenzwert Ihres Betriebssystems festzulegen, hat keine Auswirkung. Der Standardwert ist 50. Für Linux-Systeme wird empfohlen, den Wert auf eine Ganzzahl kleiner als 512 festzulegen.

key_buffer_size = 256M

key_buffer_size gibt die Puffergröße an, die für index verwendet wird. Erhöhen Sie sie für eine bessere Indexverarbeitungsleistung. Für Server mit einem Arbeitsspeicher von etwa 4 GB kann dieser Parameter auf 256 MB oder 384 MB eingestellt werden. Hinweis: Wenn Sie diesen Parameterwert zu groß einstellen, verringert sich die Gesamteffizienz des Servers!

max_allowed_packet = 4M
thread_stack = 256K
table_cache = 128K
sort_buffer_size = 6M

Fragen Sie die Puffergröße ab, die beim Sortieren verwendet werden kann. Hinweis: Der diesem Parameter zugeordnete Speicher gilt exklusiv für jede Verbindung. Bei 100 Verbindungen beträgt die gesamte zugewiesene Sortierpuffergröße 100 × 6 = 600 MB. Daher wird empfohlen, ihn für einen Server mit einem Speicher von etwa 4 GB auf 6-8 MB einzustellen.

read_buffer_size = 4M

Die Puffergröße, die von Leseabfragevorgängen verwendet werden kann. Wie sort_buffer_size gilt auch der diesem Parameter zugeordnete Speicher exklusiv für jede Verbindung.

join_buffer_size = 8M

Die Puffergröße, die von der gemeinsamen Abfrage verwendet werden kann Wie bei sort_buffer_size gilt auch der diesem Parameter zugeordnete Speicher exklusiv für jede Verbindung.

myisam_sort_buffer_size = 64M
table_cache = 512
thread_cache_size = 64
query_cache_size = 64M

Gibt die Größe des MySQL-Abfragepuffers an. Dies kann in der MySQL-Konsole beobachtet werden. Wenn der Wert von Qcache_lowmem_prunes sehr groß ist, weist dies darauf hin, dass die Pufferung häufig nicht ausreicht Wenn der Wert klein ist, wirkt sich dies auf die Effizienz aus. Dann können Sie erwägen, den Cache nicht abzufragen. Wenn der Wert sehr groß ist, bedeutet dies, dass sich viele Fragmente im Puffer befinden.

tmp_table_size = 256M
max_connections = 768

Geben Sie die maximale Anzahl von Verbindungsvorgängen an, die MySQL zulässt. Wenn beim Zugriff auf das Forum häufig die Fehlermeldung „Too ManyConnections“ erscheint, müssen Sie den Wert dieses Parameters erhöhen.

max_connect_errors = 10000000
wait_timeout = 10

Geben Sie die maximale Verbindungszeit für eine Anfrage an. Für Server mit etwa 4 GB Speicher kann sie auf 5-10 eingestellt werden.

thread_concurrency = 8

Der Wert dieses Parameters ist die Anzahl der logischen Server-CPUs * 2. In diesem Beispiel verfügt der Server über 2 physische CPUs und jede physische CPU unterstützt H.T-Hyper-Threading. Der tatsächliche Wert lautet also 4 *2=8

skip-networking

Aktivieren Sie diese Option, um die TCP/IP-Verbindungsmethode von MySQL vollständig zu schließen. Wenn der WEB-Server über eine Remote-Verbindung auf den MySQL-Datenbank-Server zugreift, tun Sie dies Aktivieren Sie diese Option nicht! Andernfalls ist die normale Verbindung nicht möglich!

table_cache=1024

Je größer der physische Speicher, desto größer die Einstellung. Der Standardwert ist 2402, passen Sie ihn für eine optimale Einstellung auf 512-1024 an

innodb_additional_mem_pool_size=4M

Der Standardwert ist 2M

innodb_flush_log_at_trx_commit=1

Wenn Sie den Wert auf 0 setzen, müssen Sie warten, bis die innodb_log_buffer_size-Warteschlange voll ist, bevor Sie sie gleichmäßig speichern. Der Standardwert ist 1.

innodb_log_buffer_size=2M

Setzen Sie ihn auf Wie viele CPUs hat Ihr Server? Es wird empfohlen, den Standardwert 8 zu verwenden

innodb_thread_concurrency=8

Es ist erwähnenswert:
key_buffer_size=256M
#默认为218,调到128最佳
tmp_table_size=64M         
#默认为16M,调到64-256最挂
read_buffer_size=4M        
#默认为64K
read_rnd_buffer_size=16M    
#默认为256K
sort_buffer_size=32M       
#默认为256K
thread_cache_size=120     
#默认为60
query_cache_size=32M

Viele Situationen erfordern spezifische Angaben Analyse

1. Wenn Key_reads zu groß ist, sollten Sie die Key_buffer_size in my.cnf erhöhen und Key_reads/Key_read_requests auf mindestens 1/100 halten.

2. Wenn Qcache_lowmem_prunes sehr groß ist, erhöhen Sie den Wert von Query_cache_size.

Das obige ist der detaillierte Inhalt vonEine ausführliche Einführung zur Optimierung von MySQL unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Wie debian recycles abgelaufen ist, SoftwareWie debian recycles abgelaufen ist, SoftwareApr 13, 2025 am 07:51 AM

In diesem Artikel wird beschrieben, wie abgelaufene Softwarepakete im Debian -System effizient reinigen können. Die Hauptmethoden umfassen die Verwendung von APT- und DPKG -Befehlen. Methode 1: Verwenden Sie den Befehl APT -Befehl APT, um eine Vielzahl von Möglichkeiten zur Reinigung von abgelaufenen Paketen anzugeben: Deinstallieren Sie das Paket: sudoaptremovepackage_name entfernt das angegebene Paket und behält die Konfigurationsdatei bei. Deinstallieren vollständig: sudoaptpurgepackage_name löscht das Paket und seine Konfigurationsdateien vollständig. Entfernen Sie automatisch Abhängigkeiten: SudoaptAutoremove löscht automatisch Abhängigkeitspakete, die nicht mehr benötigt werden. Reinigen Sie den Cache: sudoaptclean

Wie tritt Debian Readdir in Multi-Thread-Umgebung auf?Wie tritt Debian Readdir in Multi-Thread-Umgebung auf?Apr 13, 2025 am 07:48 AM

Der Readdir -Systemaufruf wird verwendet, um den Verzeichnisgehalt zu lesen. In Debian und anderen Linux-Verteilungen wird seine Implementierung in der Regel als thread-sicher angesehen, die tatsächliche Leistung wird jedoch durch die Implementierung der Bibliothek und die Systemaufrufmethoden beeinflusst. Beachten Sie bei Verwendung von Readdir in einer Multi-Thread-Umgebung: Thread-Sicherheit: Die meisten modernen C-Bibliotheken (z. B. GLIBC) Readdir-Implementierungen sind Thread-Safe, was bedeutet, dass mehrere Threads gleichzeitig ohne Datenwettbewerb aufgerufen werden können. Globaler Staat: Während Readdir selbst thread-sicher ist, kann er vom globalen Zustand abhängen (wie dem internen Zustand der Verzeichnisströme). Daher ist es in einer Umgebung mit mehreren Threaden erforderlich, um den Zugriff auf Verzeichnisströme wie die Verwendung von Mutex-Sperren zu gewährleisten. Leistungsauswirkungen: Mehrere Threads

Fehlerbehebung von Gitlab in DebianFehlerbehebung von Gitlab in DebianApr 13, 2025 am 07:45 AM

Es gibt einige häufige Probleme, auf die Sie bei der Installation und Konfiguration von GitLab in Debian -Systemen stoßen können. Hier finden Sie einige häufige Schritte und Lösungen zur Fehlerbehebung: Fehlerbehebung für Netzwerke Wenn Sie auf Netzwerkprobleme stoßen, z. Bestätigen Sie, ob die Firewall -Einstellungen den Zugriff auf die Standardprobleme von GitLab von 80 und 443 ermöglichen. Verwenden Sie Tools wie t

So optimieren Sie Debian Apache -Protokoll -LesegeschwindigkeitSo optimieren Sie Debian Apache -Protokoll -LesegeschwindigkeitApr 13, 2025 am 07:42 AM

Um die Geschwindigkeit des Lesens von Debianapache -Protokoll zu verbessern, besteht der Schlüssel darin, die richtigen Tools und Strategien auszuwählen. Die folgenden Methoden können die Effizienz des Protokolllesung effektiv verbessern: 1. Effizienter Protokoll-Anzeige-Tool Tail-Befehl: Überwachen Sie Protokolländerungen in Echtzeit, Tail-f/var/log/apache2/access.log access Access-Protokolle, Tail-N100-F ... Zeigen Sie die letzten 100 Zeilen an. Multitail: Überwachen Sie mehrere Protokolldateien gleichzeitig und bequem zum Vergleich und Analyse. LNAV: leistungsstarkes Tool zur Protokollanalyse, das Echtzeitüberwachung und erweiterte Analysen unterstützt. 2. Die Strategie zur Protokolldrehung verwendet das lweradierende Tool, um Protokolldateien regelmäßig zu teilen, um einzelne Dateien zu verhindern

So lokalisieren Sie Probleme durch Debian -Apache -ProtokolleSo lokalisieren Sie Probleme durch Debian -Apache -ProtokolleApr 13, 2025 am 07:39 AM

In diesem Artikel werden Sie mithilfe der Apache -Protokolldateien des Debian -Systems zur effektiven Fehlerbehebung von Serverproblemen geführt. Öffnen Sie zunächst das Terminal und verwenden Sie einen Texteditor wie Nano, VIM oder Gedit, um das Zugriffsprotokoll und Fehlerprotokoll von Apache zu öffnen. Diese Dateien befinden sich normalerweise im Verzeichnis/var/log/apache2/werden als Access.log bzw. error.log bezeichnet. Sie können sie mit dem folgenden Befehl öffnen: Sudonano/var/log/apache2/access.logsudonano/var/log/apache2/error.log. Analysieren Sie den Protokollinhalt. Zugang

So verhindern Sie Sicherheitsprobleme in Nginx -ProtokollenSo verhindern Sie Sicherheitsprobleme in Nginx -ProtokollenApr 13, 2025 am 07:36 AM

Die NGINX -Protokollsicherheit ist entscheidend, kann sensible Informationen austreten oder böswillige Zugriffsversuche aufdecken. Dieser Artikel enthält eine Reihe effektiver Maßnahmen, mit denen Sie die Sicherheit von NGINX -Protokoll verbessern können: Zugriffskontrolle: Strikten Sie den Zugriff auf NGINX -Protokolldateien aus. Nur autorisierte Mitarbeiter können darauf zugreifen und Dateisystemberechtigungen verwenden, um den Zugriff zu steuern. Implementieren Sie gleichzeitig die Protokolldreh- und Archivierungsstrategien, um das Maßstab der Protokolldateien zu reduzieren und Risiken zu reduzieren. Informationsdesensibilisierung: Das Protokollformat sollte vermeiden, dass sensible Informationen (z. B. Passwörter, Kreditkarteninformationen) aufgezeichnet werden. Verwenden Sie das Tool für Protokoll -Desensibilisierung oder benutzerdefiniertes Protokollformat, um sensible Daten auszublenden. Echtzeitüberwachung und Alarm: Bereitstellen des Überwachungssystems, um abnormales Verhalten in Nginx-Protokollen in Echtzeit zu verfolgen. Alarmmechanismus konfigurieren,

Wie man beschädigte Taschen in Debian recycelnWie man beschädigte Taschen in Debian recycelnApr 13, 2025 am 07:33 AM

Haben Sie im Debian -System auf ein korruptes Paket gestoßen? Machen Sie sich keine Sorgen, dieser Artikel bietet mehrere Reparaturmethoden, mit denen Sie die Systemstabilität wiederherstellen können. Schritt 1: Aktualisieren Sie die Paketliste stellen Sie sicher, dass Ihre Paketliste auf dem neuesten Stand ist. Öffnen Sie den Terminal und führen Sie den folgenden Befehl aus:

So identifizieren Sie böswilligen Zugriff in Debian Apache -ProtokollenSo identifizieren Sie böswilligen Zugriff in Debian Apache -ProtokollenApr 13, 2025 am 07:30 AM

Die effektive Überwachung und Verteidigung gegen böswillige Website -Zugriff ist entscheidend für den Apache -Server im Debian -System. Apache -Zugriffsprotokolle sind die wichtigste Informationsquelle, um solche Bedrohungen zu identifizieren. In diesem Artikel wird Sie über die Analyse von Protokollen und die Tankstellen von defensiven Maßnahmen führen. Das Apache Access -Protokoll, das böswillige Zugriffsverhaltens -Verhaltensweisen debian Systems identifiziert, befindet sich normalerweise in /var/log/apache2/access.log. Sie können die Protokolle auf verschiedene Weise analysieren: Bestätigung der Protokolldatei: Erstens bestätigen Sie den genauen Speicherort Ihres Apache -Zugriffsprotokolls, der je nach Systemkonfiguration geringfügig variieren kann. Analyse der Befehlszeilen -Tool: Verwenden Sie den GREP -Befehl, um nach bestimmten Mustern zu suchen, z. B. Grep "404"

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Leistungsstarke integrierte PHP-Entwicklungsumgebung

EditPlus chinesische Crack-Version

EditPlus chinesische Crack-Version

Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung