[MySQL优化案例]系列 -- OPTIMIZE的威力
mysql> SHOW INDEX FROM `tbl_name`; +----------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | +----------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ | tbl_name | 0 | PRIMARY | 1 | StepID | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | FlowID | 1 | FlowID | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerCount | 1 | WagerCount | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_3 | 1 | WagerID | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_3 | 2 | StepType | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_3 | 3 | ParamResult | A | 1 | 255 | NULL | | BTREE | | | tbl_name | 1 | StepType_2 | 1 | StepType | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | StepType_2 | 2 | ParamResult | A | 1 | 255 | NULL | | BTREE | | | tbl_name | 1 | WagerID_2 | 1 | WagerID | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_2 | 2 | StepType | A | 1 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_2 | 3 | ParamResult | A | 1 | 255 | NULL | | BTREE | | +----------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ 11 rows in set (0.01 sec)
mysql> optimize table tbl_name; +---------------+----------+----------+----------+ | Table | Op | Msg_type | Msg_text | +---------------+----------+----------+----------+ | test.tbl_name | optimize | status | OK | +---------------+----------+----------+----------+ 1 row in set (40.60 sec)
mysql> SHOW INDEX FROM `tbl_name`; +----------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | +----------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ | tbl_name | 0 | PRIMARY | 1 | StepID | A | 172462 | NULL | NULL | | BTREE | | | tbl_name | 1 | FlowID | 1 | FlowID | A | 86231 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerCount | 1 | WagerCount | A | 4311 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_3 | 1 | WagerID | A | 86231 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_3 | 2 | StepType | A | 172462 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_3 | 3 | ParamResult | A | 172462 | 255 | NULL | | BTREE | | | tbl_name | 1 | StepType_2 | 1 | StepType | A | 9 | NULL | NULL | | BTREE | | | tbl_name | 1 | StepType_2 | 2 | ParamResult | A | 86231 | 255 | NULL | | BTREE | | | tbl_name | 1 | WagerID_2 | 1 | WagerID | A | 86231 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_2 | 2 | StepType | A | 172462 | NULL | NULL | | BTREE | | | tbl_name | 1 | WagerID_2 | 3 | ParamResult | A | 172462 | 255 | NULL | | BTREE | | +----------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ... 如果您已经删除了表的一大部分,或者如果您已经对含有可变长度行的表(含有VARCHAR, BLOB或TEXT列的表)进行了很多更改,则应使用 OPTIMIZE TABLE。被删除的记录被保持在链接清单中,后续的INSERT操作会重新使用旧的记录位置。您可以使用OPTIMIZE TABLE来重新 利用未使用的空间,并整理数据文件的碎片。 在多数的设置中,您根本不需要运行OPTIMIZE TABLE。即使您对可变长度的行进行了大量的更新,您也不需要经常运行,每周一次或每月一次 即可,只对特定的表运行。 OPTIMIZE TABLE只对MyISAM, BDB和InnoDB表起作用。 注意,在OPTIMIZE TABLE运行过程中,MySQL会锁定表。 本文出自 “MySQL中文网”博客 http://www.imysql.cn/
[MySQL优化案例]系列 -- OPTIMIZE的威力相关推荐
- mysql 优化 案例_[MySQL优化案例]系列 -- OPTIMIZE的威力
作/译者:叶金荣(Email: ),来源:http://imysql.cn,转载请注明作/译者和出处,并且不能用于商业用途,违者必究. 1.先来看看多次删除插入操作后的表索引情况 mysql> ...
- mysql表disable_[MySQL优化案例]系列 -- DISABLE/ENABLE KEYS的作用
[MySQL优化案例]系列 -- DISABLE/ENABLE KEYS的作用 作/译者:叶金荣 来源:http://imysql.cn 转载请注明作/译者和出处,并且不能用于商业用途,违者必究. 有 ...
- [MySQL优化案例]系列 — slave延迟很大优化方法
备注:插图来自网络搜索,如果觉得不当还请及时告知 :) 一般而言,slave相对master延迟较大,其根本原因就是slave上的复制线程没办法真正做到并发.简单说,在master上是并发模式(以In ...
- [MySQL优化案例]系列 — 典型性索引引发CPU负载飙升问题
收到一个mysql服务器负载告警,上去一看,load average都飙到280多了,用top一看,CPU跑到了336%,不过IO和内存的负载并不高,根据经验,应该又是一起索引引起的惨案了. 看下pr ...
- [MySQL优化案例]系列 -- 试用TCMalloc
作/译者:叶金荣(Email: ),来源:http://imysql.cn,转载请注明作/译者和出处,并且不能用于商业用途,违者必究. TCMalloc 是用于优化C++写的多线程应用,比glibc ...
- [MySQL优化案例]系列 -- 用TIMESTAMP类型取代INT和DATETIME
引言:在以前,我总是习惯用 INT UNSIGNED 来存储一个转换成Unix时间戳的时间值,认为这样做从索引,比较等角度来讲,都会比较高效.现在我们来对比下 TIMESTAMP 和 INT UNSI ...
- [MySQL优化案例]系列 -- DISABLE/ENABLE KEYS的作用
作/译者:叶金荣(Email: ),来源:http://imysql.cn,转载请注明作/译者和出处,并且不能用于商业用途,违者必究. 有一个表 tbl1 的结构如下: CREATE TABLE `t ...
- 【MySQL】故障分析 | MySQL 优化案例 - 字符集转换
1.概述 好文章转载:故障分析 | MySQL 优化案例 - 字符集转换 一.背景 开发联系我,说是开发库上有一张视图查询速度很慢,9000 条数据要查 10s,要求我这边协助排查优化. 二.问题 S ...
- mysql优化案例(14秒优化到不到1秒)
优化案例 前面用过的tbiguser表有10000000条记录 创建tuser1表和tuser2表,并初始化若干的数据. create table tuser1( id int primary key ...
最新文章
- 科技创新2030---“新一代人工智能”重大项目2018年度项目申报指南征稿
- redis trie
- 损失函数|交叉熵损失函数
- 方舟服务器修改错误,方舟进服务器提示网络错误怎么办 | 手游网游页游攻略大全...
- DRF (Django REST framework) 框架介绍
- 树形DP+树状数组 HDU 5877 Weak Pair
- IIS OCIEnvCreate failed with return code -1
- C++俄罗斯方块(linux环境)-转 感觉非常好
- 五八搜索实时索引实现和重构
- 构建插件式的应用程序框架(四)----服务容器(ZT)
- 报表服务器无法打开数据库连接 修改 web.config,修改服务器数据库连接配置
- 关于图书馆占座问题的调查
- 深度卷积神经网络的高级主题
- 第十六章 python Pygame的使用
- matlab 分数阶的预估校正算法及实现
- 电脑端bilibili视频缓存合并视频的解惑
- 通过自定义镜像创建具有相同操作系统、应用程序和数据的百度云服务器BCC,有效提高交付效率!
- Python性能优化
- 视频分享 500 G JAVA视频网盘分享(JEECG开源社区)
- 跟我一起学PyTorch-07:嵌入与表征学习
热门文章
- [原]ubuntu14.04 网卡逻辑修改没有文件/etc/udev/rules.d/70-persistent-net.rules
- Orace 11g 监听 配置修改 说明
- Why Vector Clock are Easy or Hard?
- Firefox3与WEB客户端开发相关的新特性
- 幼儿园带括号算式口诀_整理41组“数学顺口溜”+大九九乘法口诀表!给孩子们收藏...
- c 递归下降识别程序_看动画轻松理解递归与动态规划
- 用反向传导模拟共振并用共振频率作分类
- 用神经网络做分子模型:乙烯和乙炔的实验数据
- nodejs(1)---mongodb
- 行转列 oracle nvl,oracle 行转列 decode