Impostazioni cache delle query MySQL

June 14

Impostazioni cache delle query MySQL


Gli sviluppatori del database MySQL hanno continuamente migliorato la sua funzionalità per soddisfare le esigenze delle applicazioni web come blog e siti di social networking. È possibile modificare le sue prestazioni ancora più modificando le impostazioni della cache delle query di MySQL, che può aumentare la velocità di database memorizzando i risultati di una query nella memoria del server. Quando la stessa query viene inviata di nuovo, i dati vengono recuperati dal server di RAM piuttosto che più lento, hardware del server di database.

dimensione della cache

Memoria del computer per memorizzare i risultati delle query MySQL tra le richieste viene messa da parte con la variabile query_cache_size. La cache delle query MySQL richiede un minimo di 40 KB solo per l'overhead necessario per interrogare i risultati, e assegna le dimensioni di query multipli di 1024 byte. Per esempio, una cache delle query 40KB sarebbe in realtà avere 40960 byte di memoria mettere da parte, ma se si imposta query_cache_size a 40000 byte, MySQL arrotonda il numero fino a 39936 - più vicino multiplo di 1024. Se si imposta a zero, la cache è disabilitato.

Tipo cache

La variabile query_cache_type determina quali risultati delle query saranno memorizzati nella cache. Se si imposta query_cache_type a zero, la cache viene spento - anche se la variabile query_cache_size non è impostato a zero. Impostazione del query_cache_type a 1 memorizza nella cache tutti i risultati delle query ad eccezione di quelli recuperati con il comando, "SELECT SQL_NO_CACHE." È possibile indicare MySQL di memorizzare nella cache solo determinati risultati della query impostando query_cache_type a 2 e iniziare le query che si desidera memorizzare nella cache con una dichiarazione "SELECT SQL_CACHE".

Blocchi RAM Cache

Per impostazione predefinita, MySQL si riserva spazio per i risultati delle query in blocchi da 4KB. Se una query restituisce 5 KB di dati, MySQL in realtà mette da parte 8 KB di RAM per memorizzare in. Allo stesso modo, a 1 KB risultati della query ancora occupa 4 KB di spazio. È possibile modificare la dimensione dei blocchi di query impostando la variabile query_cache_min_res_unit ad una dimensione del blocco più efficiente, tuttavia. Sui server 32-bit, la dimensione di query_cache_min_res_unit può variare da 512 a 4294967295 bit. Nei sistemi a 64 bit, la dimensione massima del blocco è 18446744073709547520 bit.

Massima query Size Risultato

La variabile query_cache_limit MySQL determina la dimensione massima di un singolo risultato di una query che possono essere memorizzati nella cache. Per impostazione predefinita, query_cache_limit è impostata su 1 MB o 1048576 bit, e il suo valore minimo è pari a zero. Su un server a 32 bit, query_cache_limit può essere grande 4294967295 bit; su un server a 64 bit, è 18446744073709547520 bit.