2016-05-03 6 views
0

MyISAM Abfragen Ergebnisse ist, Was ändert soll ich machenwie Mysql zu stimmen, wenn Speicher-Engine zu langsam MyISAM

wenn
Ram 16GB DB 500GB

mysql> SHOW STATUS LIKE 'key%' 

+------------------------+-------------+ 
| Variable_name   | Value  | 
+------------------------+-------------+ 
| Key_blocks_not_flushed | 0   | 
| Key_blocks_unused  | 275029  | 
| Key_blocks_used  | 3316428  | 
| Key_read_requests  | 11459264178 | 
| Key_reads    | 3385967  | 
| Key_write_requests  | 91281692 | 
| Key_writes    | 27930218 | 
+------------------------+-------------+ 
+0

Wie viel RAM? Irgendwelche InnoDB-Tabellen? –

+0

16 GB RAM mit 637 MyISAM-Tabellen und 67 Innodb-Tabellen, 21 MEMORY –

Antwort

0

Nachdem genügend Platz subtrahieren aus Für die tatsächlichen Größen der MEMORY-Tabellen und Anwendungen, die auf demselben Computer ausgeführt werden, geben Sie 10% des verbleibenden Arbeitsspeichers an key_buffer_size und 35% an innodb_buffer_pool_size. Das sollte ein guter erster Schnitt für die Hauptspeicherbenutzer sein.

Die Key_reads/Key_read_requests sagt, dass key_buffer_size groß genug ist. Key_blocks_used * 1024/key_buffer_size gibt Ihnen eine Obergrenze für das, was Sie gerade brauchen.

Wenn Sie noch andere Änderungen in my.cnf vorgenommen haben, sehen wir sie.

http://mysql.rjweb.org/doc.php/memory

+0

also Ihrer Meinung nach ist es nicht notwendig zu tunen? –

+0

Falsch. Sie haben weder Details zur Verwendung von InnoDB noch den Wert von key_buffer_size angegeben. Die beiden Prozentsätze, die ich angegeben habe, sind eine ziemlich sichere erste Schätzung, was gut sein wird. –

Verwandte Themen