This section describes the expression-based Memory Usage Advisors.
Logical I/O is many times faster than physical I/O, and therefore a DBA should strive to keep physical I/O to a minimum. It is true that logical I/O is not free, and that the DBA should work to keep all I/O to a minimum, but it is best if most data access is performed in memory. When using InnoDB, most data access should occur in memory, and therefore the InnoDB buffer cache hit rate should be high.
Default frequency 00:05:00
Default auto-close enabled no
The key cache hit ratio represents the proportion of keys that are being read from the key cache in memory instead of from disk. This should normally be greater than 99% for optimum efficiency.
Default frequency 00:05:00
Default auto-close enabled no
This advisor does not evaluate against MySQL 8, or higher.
When enabled, the query cache should experience a high degree of
hits, meaning that queries in the cache are being reused by
other user connections. A low hit rate may indicate not enough
memory is allocated to the cache, identical queries are not
being issued repeatedly to the server, or that the statements in
the query cache are invalidated too frequently by
INSERT
, UPDATE
, or
DELETE
statements.
This advisor triggers when more than 25% of the Query Cache is being used, and the ratio of Query Cache hits to Query Cache inserts is low.
Default frequency 00:05:00
Default auto-close enabled no
This advisor does not evaluate against MySQL 8, or higher.
When the Query Cache is full, and needs to add more queries to the cache, it makes more room in the cache by freeing the least recently used queries from the cache, and then inserting the new queries. If this is happening often, increase the size of the cache to avoid this swapping.
Default frequency 00:05:00
Default auto-close enabled no
MySQL is multi-threaded, so there may be many clients issuing queries for a given table simultaneously. To minimize the problem of multiple client threads having different states on the same table, the table is opened independently by each concurrent thread.
The table cache is used to cache file descriptors for open
tables and there is a single cache shared by all clients.
Increasing the size of the table cache allows mysqld to keep
more tables open simultaneously by reducing the number of file
open and close operations that must be done. If the value of
Open_tables
is approaching the
value of table_open_cache
, this
may indicate performance problems.
Default frequency 00:05:00
Default auto-close enabled no
Each connection to the MySQL database server runs in its own thread. Thread creation takes time, so rather than killing the thread when a connection is closed, the server can keep the thread in its thread cache and use it for a new connection later.
Default frequency 00:05:00
Default auto-close enabled no