mysql 性能优化推荐书籍?
1. 推荐书籍:《高性能MySQL》2. 这本书是由MySQL专家撰写的,详细介绍了MySQL的性能优化方法和技巧。
它涵盖了索引优化、查询优化、表设计、服务器配置等方面的内容,可以帮助读者深入理解MySQL的性能优化原理和方法。
3. 此外,除了《高性能MySQL》这本书,还可以参考一些在线文档和博客,如MySQL官方文档、Percona的博客等,以获取更多的性能优化建议和实践经验。
同时,不断学习和实践也是提升MySQL性能优化能力的重要途径。
1.《高性能MySQL》
noDB存储引擎》
noDBnoDB的架构、索引、事务、锁等方面的知识,并且给出了大量的实例和性能测试结果,非常适合MySQL的进阶者。
3.《MySQL性能调优与架构设计》
4.《MySQL技术内幕:SQL优化》
mysql优化教程?
1、对SQL语句、索引、表结构等进行优化。
2、开启查询缓存,Query Cache缓存了SELECT查询及其结果数据集,当执行一个同样的SELECT查询时,MySQL会从内存中直接取出结果,加快了查询执行速度、减小了数据库的压力。执行SHOW VARIABLES LIKE 'have_query_cache';可以查看MySQL查询缓存是否打开,开启查询缓存只需配置my.cnf文件即可,具体如下:
query_cache_type = 1
query_cache_size = 128M
query_cache_limit = 1M
保存好后重启MySQL。
3、选用InnoDB存储引擎,MySQL常用存储引擎是MyISAM和InnoDB,二者区别如下:
MyISAM
查询速度快;
支持表级锁,在上锁期间表上不能进行其他操作;
支持全文检索;
支持数据压缩、自我复制、查询缓存、数据加密;
不支持外键;
不支持事务,所以也就没有COMMIT和ROLLBACK操作;
不支持集群数据库。
InnoDB
支持行级锁;
支持外键,对外键约束强制;
支持事务,可执行COMMIT和ROLLBACK操作;
支持数据压缩、自我复制、查询缓存、数据加密;
可用在集群环境,但并不完全支持。InnoDB表可以转换为NDB存储引擎,这样就能用在集群环境。
MySQL的优化要根据实际业务,并没有什么通用的优化。
其实其他回答都说的很全,
但是我从比较实际的地方说说吧。
第一、开启MySQL的slowLog
slowLog会记录MySQL执行过的慢查询,比较佛系的办法就是让它记录一段时间,
然后查看里面执行的语句。
第二、通过desc的方式来查看慢的原因
比如:SELECT * FROM tbl WHERE Date = CURDATE();
你可以通过执行 desc SELECT * FROM tbl WHERE Date = CURDATE();
这个时候Mysql就会显示执行这句sql的计划,
如果你发现是全表查询,这个时候尝试在Date上增加索引,
然后再跑一次DESC,这个时候你就会发现这句语句已经走了索引。
*通常这个办法能解决90%的慢查询问题。
当上面的问题都无法满足到你的时候,
建议可以参考Mysql官方的参数设定,
然后根据业务特性对MySQL进行特定优化。

