Loading Docs/manual.texi +18 −6 Original line number Diff line number Diff line Loading @@ -35523,11 +35523,11 @@ dynamic content. Following are some performance data for the query cache (We got these by running the MySQL benchmark suite on a Linux Alpha 2x500 MHz with 2GB RAM and a 64MB query cache). 2x500 MHz with 2GB RAM and a 64MB query cache): @itemize @bullet @item If want to disable the query cache code set @code{query_cache_size=0}. If you want to disable the query cache code set @code{query_cache_size=0}. By disabling the query cache code there is no noticeable overhead. @item If all of the queries you're preforming are simple (such as selecting a Loading Loading @@ -35578,7 +35578,7 @@ found rows is also stored in the cache. If a table changes (@code{INSERT}, @code{UPDATE}, @code{DELETE}, @code{TRUNCATE}, @code{ALTER} or @code{DROP TABLE|DATABASE}), then all cached queries that used this table (possibly through a MRG_MyISAM table!) become invalid and are removed from the cache. @code{MRG_MyISAM} table!) become invalid and are removed from the cache. Currently all @code{InnoDB} tables are invalidated on @code{COMMIT}, in the future this will be changed so only tables changed in the Loading Loading @@ -35695,18 +35695,30 @@ You can monitor query cache performance in @code{SHOW STATUS}: @item @code{Qcache_inserts} @tab Number of queries added to the cache. @item @code{Qcache_hits} @tab Number of cache hits @tab Number of cache hits. @item @code{Qcache_not_cached} @tab Number of non-cached queries (not cachable, or due to SQL_QUERY_CACHE_TYPE) (not cachable, or due to @code{SQL_QUERY_CACHE_TYPE}). @item @code{Qcache_free_memory} @tab Amount of free memory for query cache. @item @code{Qcache_total_blocks} @tab Total number of blocks in query cache. @item @code{Qcache_free_blocks} @tab Number of free memory blocks in query cache. @end multitable Please note: Total number of queries = @code{Qcache_inserts} + @code{Qcache_hits} + @code{Qcache_not_cached}. The query cache uses variable length blocks, so @code{Qcache_total_blocks} and @code{Qcache_free_blocks} may indicate query cache memory fragmentation. After @code{FLUSH QUERY CACHE} only a single (big) free block remains. Note: Every query needs a minimum of two blocks (one for the query text and one or more for the query results). Also, every table that is used by a query needs one block, but if two or more queries use same table only one block needs to be allocated. @node Table types, Clients, Reference, Top @chapter MySQL Table Types Loading
Docs/manual.texi +18 −6 Original line number Diff line number Diff line Loading @@ -35523,11 +35523,11 @@ dynamic content. Following are some performance data for the query cache (We got these by running the MySQL benchmark suite on a Linux Alpha 2x500 MHz with 2GB RAM and a 64MB query cache). 2x500 MHz with 2GB RAM and a 64MB query cache): @itemize @bullet @item If want to disable the query cache code set @code{query_cache_size=0}. If you want to disable the query cache code set @code{query_cache_size=0}. By disabling the query cache code there is no noticeable overhead. @item If all of the queries you're preforming are simple (such as selecting a Loading Loading @@ -35578,7 +35578,7 @@ found rows is also stored in the cache. If a table changes (@code{INSERT}, @code{UPDATE}, @code{DELETE}, @code{TRUNCATE}, @code{ALTER} or @code{DROP TABLE|DATABASE}), then all cached queries that used this table (possibly through a MRG_MyISAM table!) become invalid and are removed from the cache. @code{MRG_MyISAM} table!) become invalid and are removed from the cache. Currently all @code{InnoDB} tables are invalidated on @code{COMMIT}, in the future this will be changed so only tables changed in the Loading Loading @@ -35695,18 +35695,30 @@ You can monitor query cache performance in @code{SHOW STATUS}: @item @code{Qcache_inserts} @tab Number of queries added to the cache. @item @code{Qcache_hits} @tab Number of cache hits @tab Number of cache hits. @item @code{Qcache_not_cached} @tab Number of non-cached queries (not cachable, or due to SQL_QUERY_CACHE_TYPE) (not cachable, or due to @code{SQL_QUERY_CACHE_TYPE}). @item @code{Qcache_free_memory} @tab Amount of free memory for query cache. @item @code{Qcache_total_blocks} @tab Total number of blocks in query cache. @item @code{Qcache_free_blocks} @tab Number of free memory blocks in query cache. @end multitable Please note: Total number of queries = @code{Qcache_inserts} + @code{Qcache_hits} + @code{Qcache_not_cached}. The query cache uses variable length blocks, so @code{Qcache_total_blocks} and @code{Qcache_free_blocks} may indicate query cache memory fragmentation. After @code{FLUSH QUERY CACHE} only a single (big) free block remains. Note: Every query needs a minimum of two blocks (one for the query text and one or more for the query results). Also, every table that is used by a query needs one block, but if two or more queries use same table only one block needs to be allocated. @node Table types, Clients, Reference, Top @chapter MySQL Table Types