尤溪网站开发广西北海网站建设
web/
2025/10/5 8:59:48/
文章来源:
尤溪网站开发,广西北海网站建设,有人找做网站的,怎么恶意点击对手竞价在以前的博客中陆续记录了有关查询效率方面的文章。今天在整理一下#xff0c;写上自己的一些心得记录如下#xff1a;常见查询慢的原因常见的话会有如下几种#xff1a;1、没有索引或没有用到索引。PS#xff1a;索引用来快速地寻找那些具有特定值的记录#xff0c;所有M…在以前的博客中陆续记录了有关查询效率方面的文章。今天在整理一下写上自己的一些心得记录如下常见查询慢的原因常见的话会有如下几种1、没有索引或没有用到索引。PS索引用来快速地寻找那些具有特定值的记录所有MySQL索引都以B-树的形式保存。如果没有索引执行查询时MySQL必须从第一个记录开始扫描整个表 的所有记录直至找到符合要求的记录。表里面的记录数量越多这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引MySQL无需扫描任何记录 即可迅速得到目标记录所在的位置。如果表有1000个记录通过索引查找记录至少要比顺序扫描记录快100倍。索引类型普通索引这是最基本的索引类型没唯一性之类的限制。唯一性索引和普通索引基本相同但所有的索引列只能出现一次保持唯一性。主键主键是一种唯一索引但必须指定为PRIMARY KEY。全文索引MYSQL从3.23.23开始支持全文索引和全文检索。在MYSQL中全文索引的索引类型为FULLTEXT。全文索引可以在VARCHAR或者TEXT类型的列上创建。2、IO吞吐量小形成了瓶颈。PS这是从系统层来分析MYSQL是比较耗IO的。一般数据库监控也是比较关注IO。监控命令$iostat -d -k 1 10参数 -d 表示显示设备(磁盘)使用状态-k某些使用block为单位的列强制使用Kilobytes为单位1 10表示数据显示每隔1秒刷新一次共显示10次。3、内存不足监控内存使用vmstat [-n] [延时[次数]]Memoryswpd: 切换到交换内存上的内存(默认以KB为单位)• 如果 swpd 的值不为0或者还比较大比如超过100M了但是si, so 的值长期为0这种情况我们可以不用担心不会影响系统性能。free: 空闲的物理内存buff: 作为buffer cache的内存对块设备的读写进行缓冲cache: 作为page cache的内存, 文件系统的cache• 如果 cache 的值大的时候说明cache住的文件数多如果频繁访问到的文件都能被cache住那么磁盘的读IO bi 会非常小。4、网络速度慢ping IP -t 查看是否有丢包。5、一次查询的数据量过大。比如没有分页查询一次提取上万条记录。数据库有可能卡死。6、出现死锁所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.Show innodb status检查引擎状态 ,可以看到哪些语句产生死锁。执行show processlist找到死锁线程号.然后Kill processNo7、返回了不必要的行或列一般查询SQL语句一定要将字段明确指定。而不要使用*进行查询8、注意UNion和UNion all 的区别。UNION all好UNION在进行表链接后会筛选掉重复的记录所以在表链接后会对所产生的结果集进行排序运算删除重复的记录再返回结果。所以union all的效率肯定要高9、
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/87276.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!