高并发之数据库优化
Posted qinsilandiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高并发之数据库优化相关的知识,希望对你有一定的参考价值。
数据库缓存
常见的缓存形式:内存缓存,文件缓存
mysql查询缓存(了解即可)
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;//关闭所有打开的表,同时该操作将会清空查询缓存中的内容
memcache缓存
通用缓存机制,用查询的方法名+参数作为查询时的key value对中的key值
redis缓存
类似memcache的缓存,支持实务,支持多种数据类型.
Redis用于数据量较小的高性能操作和运算上,Memcache用于在动态系统中减少数据库负载,提升性能;适合做缓存,提高性能
其他数据缓存
Session
session_set_save_handler
数据库优化
数据表数据类型优化
索引优化
SQL语句的优化
存储引擎的优化
数据表结构设计的优化
数据库服务器架构的优化
以上是关于高并发之数据库优化的主要内容,如果未能解决你的问题,请参考以下文章