专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

mysql 查询速度优化,mysql如何定期分析检查与优化表_数据库

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 13:23:00       共计:3584 浏览
mysql 查询速度优化,mysql如何定期分析检查与优化表?

1. 对表进行优化 ( 优化表主要作用是消除删除或者更新造成的空间浪费)

2. 对表进行分析(分析关键字的分布, 分析并存储MyISAM和BDB表中键的分布)

3. 对表进行检查(检查表的错误,并且为MyISAM更新键的统计内容)

4. 对表进行修复(修复被破坏的MyISAM表)

分析表

ANALYZE TABLE 表名1 [,表名2…] ;

ANALYZE TABLE分析表的过程中,数据库系统会对表加一个只读锁。在分析期间,只能读取表中的记录,不能更新和插入记录。ANALYZE TABLE语句能够分析InnoDB和MyISAM类型的表。

对表的定期分析可以改善性能,且应该成为常规维护工作的一部分。因为通过更新表的索引信息对表进行分析,可改善数据库性能。

检查表

MySQL中使用CHECK TABLE语句来检查表。CHECK TABLE语句能够检查InnoDB和MyISAM类型的表是否存在错误。还可以检查视图是否存在错误.

check table 表名

优化表

随着MySQL的使用,包括BLOB和VARCHAR字节的表将变得比较繁冗,因为这些字段长度不同,对记录进行插入、更新或删除时,会占有不同大小的空间,记录就会变成碎片,且留下空闲的空间。像具有碎片的磁盘,会降低性能,需要整理,因此要优化。 (个人理解:当删除数据之后,原来的索引文件位置会空出来。等待新文件的插入,optimize命令就是整理索引文件)

针对MyISAM表,直接使用如下命令进行优化

optimize table table1[,table2][,table3]

myisam

innodb

Table does not support optimize, doing recreate + analyze instead。因为Innodb结构下删除了大量的行,此时索引会重组并且会释放相应的空间因此不必优化。

show table status like ‘表名’;

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:为什么php工作难找_数据库 | ·下一条:mysql多表分页查询,java学习到什么程度可以找第一份工作_数据库

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有