有哪些优化MySQL的方法
这篇文章给大家分享的是有关有哪些优化MySQL的方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
MySQL优化1.优化索引、SQL语句、分析慢查询;
2.设计表的时候严格按照数据库的设计范式来设计数据库;
3.我们还可以将我们的业务架构进行缓存,静态化和分布式;
4.不用全文索引,使用Xunsearch,ES或者云服务器上的索引;
5.如果效率还是不够好,可以采用主从方式将数据读写分离;
6.可以加上memcached缓存,将经常被访问到但不经常变化的数据放至memcached缓存服务器里面,这样的话能够节约磁盘I/O;
7.还可以优化硬件,在硬件层面,我们可以使用更好的一些硬盘(固态硬盘),使用一些磁盘阵列技术(raid0,raid1,raid5)
- raid0:最简单的(两块硬件相加100G+100G=200G)
- raid1:镜像卷,把同样的数据下两份。可以随即从A/B里面读取,效率更高,硬盘坏了一块数据也不会丢失;
- raid5:3块硬盘,坏了一块,另外两块也能工作。
8.如果还是慢,先不要切分表,可以使用MySQL内部自带的表分区技术,将数据分成不同的文件,这样能够让磁盘在读取的时候效率更高;
9.可以做垂直分表,将不经常用读的数据放到另外一个表里去(节约磁盘I/O);
10.数据量特别大,我们优化起来会很困难,这时可以使用数据库中间件的方式,将数据进行分库分表分机器。(原理:数据路由);
11.此外,还可以采用一些更快的存储方式,例如NoSQL存储一些我们需要经常访问到的数据(数据库取出来后,再到NoSQL中取出一些其他数据);
12.此外还有一些表引擎选择,参数优化还有些相关的小技巧都是优化MySQL的方式;
慢查询:指超过指定时间的SQL语句查询,分析MySQL语句查询性能的方法除了使explain输出执行计划,还可以让MySQL记录下查询超过指定时间的语句。
Xunsearch:免费开源的专业全文检索解决方案,旨在帮助一般开发者针对既有的海量数据快速而方便地建立自己的全文搜索引擎。全文检索可以帮助降低服务器的搜索负荷、极大程度的提高搜索速度和用户体验。
ElasticSearch:一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。
扩:
手机端不支持session和cookie要实现用户登录怎么办?
1.在协议处使用Restful;
2.换token(类似于微信开发时使用的appid );
感谢各位的阅读!关于有哪些优化MySQL的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。