MySQL统计信息收集

======从新收集统计信息=======
1.分析和存储表的关键字分布
analyze table table_name;

analyze 用于收集优化器的统计信息、和tuning相关;对 myisam、BOB、innodb起做用

注意:(通过实践操做 在MySQL5.5版本下执行sql:analyze table table_name 会立刻返回一个ok状态,可是后端仍然会出现锁表等状况

 

2.检查表(视图),检查一个或者多个表是否有错误
  check table table_name;
 
  对myisam(关键字统计数据被更新)和innodb都有做用,对于myisam来讲,须要check和repair(因为myisam表可能损坏)

 

3.按期优化表(对空间碎片进行整理合并,消除因为删除或者更新形成的空间浪费)
  optimize table table_name;

  对myisam,bob和innodb表起做用,可是该操做会引发锁表

 

optimize 能够回收空间,整理碎片,提升IO 之处 innodb、myisam、archive;如如果replication环境,能够加no_write_to_binlog
 optimize local table table_name;

====小结:====sql

在MySQL实际生产环境中,对于一些常常性DML操做的表,是须要按期在业务低峰期执行optimize来收缩表空间,对于优化慢sql和压缩磁盘都有较大的好处。后端

analyze 和optimize都是会锁表的,(固然是由于业务生产中基本选择了innodb的前提下)注意在业务高峰期切忌操做。优化

相关文章
相关标签/搜索