首页 > 数据库 >mysql的show index和optimize

mysql的show index和optimize

时间:2022-12-02 13:06:51浏览次数:37  
标签:index name show optimize 索引 mysql TABLE OPTIMIZE


今天复习了MYSQL中的show index和optimize,在mysql中,观察索引的用法如下:
mysql> SHOW INDEX FROM mytable FROM mydb;
mysql> SHOW INDEX FROM mydb.mytable;

出来的列含义如下:
Table

表的名称。

Non_unique

如果索引不能包括重复词,则为0。如果可以,则为1。

Key_name

索引的名称。

Seq_in_index

索引中的列序列号,从1开始。

Column_name

列名称。

Collation

列以什么方式存储在索引中。在MySQLSHOW INDEX语法中,有值’A’(升序)或NULL(无分类)。

Cardinality

索引中唯一值的数目的估计值。通过运行ANALYZE TABLE或myisamchk -a可以更新。基数根据被存储为整数的统计数据来计数,所以即使对于小型表,该值也没有必要是精确的。基数越大,当进行联合时,MySQL使用该索引的机会就越大。

Sub_part

如果列只是被部分地编入索引,则为被编入索引的字符的数目。如果整列被编入索引,则为NULL。

Packed

指示关键字如何被压缩。如果没有被压缩,则为NULL。

Null

如果列含有NULL,则含有YES。如果没有,则该列含有NO。

Index_type

用过的索引方法(BTREE, FULLTEXT, HASH, RTREE)。

2 可以用optimize进行优化
  optimize table tbl_name;

 中文手册中的论述如下,对optimize:
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会锁定表。

标签:index,name,show,optimize,索引,mysql,TABLE,OPTIMIZE
From: https://blog.51cto.com/u_14230175/5906930

相关文章

  • 复现MySQL的索引选择失误以及通过OPTIMIZER_TRACE分析过程
    复现MySQL的索引选择失误以及通过OPTIMIZER_TRACE分析过程验证环境:MySQL5.7.39windows-pc一、构造数据(生成150万数据)构建一张账户表,带有一级部门id和二级部门id,并且......
  • vscode shows the current git branch in the terminal All In One
    vscodeshowsthecurrentgitbranchintheterminalAllInOnemacOS&giterror❌/Library/Developer/CommandLineTools$git--version#xcrun:error:in......
  • Show()跟ShowDialog()的区别
    Show和ShowDialog有什么不同呢,什么时候用Show,什么时候用ShowDialog呢?相信看完这篇博客,你会有一个比较明确的答案。说到show跟ShowDialog的区别很多人会想到的是,他们一个......
  • showdoc本地部署
    ShowDoc就是一个非常适合IT团队的在线文档分享工具,使用的是一款非常轻量级的关系数据库系统SQLite,支持多数SQL92标准。它可以加快团队之间沟通的效率。但是把所有的接口文......
  • v-if和v-show的区别
    v-if 和 v-show的区别v-if 是“真实的”按条件渲染,因为它确保了在切换时,条件区块内的事件监听器和子组件都会被销毁与重建。v-if 也是惰性的:如果在初次渲染时条件值......
  • jdk源码之String 中 codePointCount(int beginIndex, int endIndex) 方法作用
    作用:返回代码点数量。string代表一个字符串大多时候string.length() 和 codePointCount(0,string.length()) 返回的结果是一致的。返回的也是长度。 但是!!!增补字符,即......
  • jdk源码中String中的 codePointAt(int index) 方法作用
    jdk源码中String中的codePointAt(intindex)方法作用: 返回字符串中第index位字符的ascii编码 例如:Stringstring="abcdefg";intcodePointAt=sb.codePointAt(0......
  • (转) - Mysql key和index区别
    MySQL索引的概念  索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。更通俗的说,数据库索引好比是一本书前......
  • 运行tensorflow出现This TensorFlow binary is optimized with oneAPI Deep Neural Ne
    ThisTensorFlowbinaryisoptimizedwithoneAPIDeepNeuralNetworkLibrary(oneDNN)tousethefollowingCPUinstructionsinperformance-criticaloperations:......
  • #yyds干货盘点#前端存储之indexDB
    ​​localStorage​​​是前端本地存储的一种,其容量一般在​​5M-10M​​左右,用来缓存一些简单的数据基本够用,毕竟定位也不是大数据量的存储。在某些场景下​​localSto......