常见的缓存形式:内存缓存,文件缓存
query-cache-type
查询缓存类型,有0、1、2三个取值。0则不使用查询缓存。1表示
始终使用查询缓存。2表示按需使用查询缓存。
query_cache_type为1时,亦可关闭查询缓存
SELECT SQL_NO_CACHE * FROM my_table WHERE condition;
query-cache-type为2时,可按需使用查询缓存
SELECT SQL_CACHE * FROM my_table WHERE condition;
query_cache_size
默认情况下query-cache-size为0,表示为查询缓存预留的内存为0,则无法使用查询缓存
SET GLOBAL query_cache_size=134217728;
查询缓存可以看做是SQL文本和查询结果的映射,第二次查询的SQL和第一次查询的SQL完全相同,则会使用缓存。
SHOW STATUS LIKE‘Qcachehits‘;//查看命中次数,表的结构或数据发生改变时,查询缓存中的数据不再有效
FLUSH QUERY CACHE;//清理鱼询缓存内存碎片
RESET QUERY CACHE;//从查询缓存中移出所有查询
FLUSH TABLES;//关闭所有打开的表,同时该操作将会清空查询缓存中的内容
通用缓存机制,用查询的方法名+参数作为查询时的key value对中的key值
类似memcache的缓存,支持实务,支持多种数据类型.
Redis用于数据量较小的高性能操作和运算上,Memcache用于在动态系统中减少数据库负载,提升性能;适合做缓存,提高性能
Session
session_set_save_handler
数据表数据类型优化
索引优化
SQL语句的优化
存储引擎的优化
数据表结构设计的优化
数据库服务器架构的优化