首页
学习
活动
专区
圈层
工具
发布

【高性能MySQL】MySQL查看表详情SHOW TABLE STATUS

在文件系统中,MySQL将每个数据库保存为数据目录下的一个子目录。创建表时,MySQL会在数据库子目录下创建一个和表同名的.frm文件保存表的定义。...例如创建一个名为MyTable的表,MySQL会在MyTbale.frm文件中保存该表的定义。可以使用SHOW TABLE STATUS命令显示表的相关信息。...show table status like 'sys_dict'简单介绍下每行的含义:Name:表名。Engine:表的存储引擎类型。Row_format:行的格式。...Data_free:在MySQL 中是文件系统中未使用空间的值。换句话说,分配给表或分区但当前未被数据使用的空间量。它指示操作系统或 MySQL 服务器可能回收但尚未释放的空间量,也叫做数据碎片。...Check_time:使用CKECK TABLE命令或者myisamchk工具最后一次检查表的时间。Collation:表的默认字符集和排序规则。

1.7K00

mysql中使用show table status 查看表信息

本文导读:在使用mysql数据库时,经常需要对mysql进行维护,查询每个库、每个表的具体使用情况,Mysql数据库可以通过执行SHOW TABLE STATUS命令来获取每个数据表的信息。...2、例如 (1)、show table status from db_name 查询db_name 数据库里所有表的信息 (2)、show table status from db_name like...‘esf_seller_history’\G; 查询db_name 里 esf_seller_history 表的信息 (3)、show table status from db_name LIKE...‘uc%’ 查询db_name 数据库里表名以uc开头的表的信息 二、show table status 查询结果中各列的意思 1、Name 表名称 2、Engine 表的存储引擎 3、Version...三、实例 mysql>show table status like ‘esf_seller_history’\G; 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/

5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    SHOW TABLE STATUS显示行数为0但SHOW INDEX却显示几十万?--MySQL InnoDB 统计信息源码解析

    “数据明明插进去了,为什么 SHOW TABLE STATUS 说表是空的?” 这是许多 DBA 和开发在批量导入数据后常遇到的“灵异现象”。...上述情况是我刚刚做测试时偶尔发现的,数据库版本是MYSQL8.0.39社区版,查询的现象如下: 下面我们还原一下过程并从源码中探索原因。 1....以上可以发现 show table status的rows是0 ,show index 方式查询结果有298920(接近实际值)。顿感诧异,这两个不是调用同一个方法采样的?...3.1 SHOW TABLE STATUS 的调用链 在 MySQL 源码中,该命令最终调用存储引擎的 handler::info() 接口: // sql/sql_show.cc table->file...SHOW INDEX 主动触发了索引级统计更新 SHOW TABLE STATUS 仅读取缓存的表级统计,未触发更新 因此和show table status的本质区别是一个是“按需计算”,一个是“懒加载缓存

    27110

    【MySQL】磁盘写满之后,数据库show status受到阻塞的原因

    编辑手记:前两天同事讨论到一个问题,当mysql从库磁盘满之后,show status及show slave status会被卡住,但其他select操作不受影响,但如果数据库是主库,磁盘满了之后,只有.../mysqld: The table 'x' is full,官方文档没有提到这个情况,此处的表x是innodb表。...上面是对主库所在磁盘写满之后,数据库实例的反应,下面讲讲我们遇到的情况:从库磁盘写满之后,show status及show slave status会被卡住,但其他select操作不受影响。...看了以上的结论,是否会想到另外一个操作顺序:磁盘写满->show status,这种操作的结果是:show status不会被阻塞的。...3.show status相关的函数及部分代码 mysqld.cc ? sql_show.cc ? sql_show.cc ? ?

    2.7K60

    MySQL中神奇的show命令详解

    show function code:显示函数代码 show function status:显示函数状态 show grants:显示授予用户的安全权限 show index:返回表索引信息 show...master status:显示有关主服务器的二进制日志文件的状态信息 show open tables:列出temporary表缓存中当前打开的非表 show plugins:显示有关服务器插件的信息...show privileges:显示mysql服务器支持的系统权限列表 show procedure code:显示存储过程代码 show procedure status:显示存储过程状态 show...show slave status:显示有关从属线程的基本参数的状态信息 show status:服务器状态信息 show table status:提供了很多关于每个非temporary 表的信息...show tables:列出temporary给定数据库中的非表 show triggers:列出当前为数据库中的表定义的触发器 show variables:显示mysql系统变量的值 show warnings

    2.7K20

    如何正确的清理MySQL中的数据

    如何正确的清理MySQL中的数据 1. 为什么删了数据,表文件大小没有变 1.1 数据删除流程 删除记录,只会将记录标记为删除,表示该位置可以服用。 数据数据页,表示数据页可以复用。...使用 delete 删除所数据,所有的数据页会被标记为可复用,但是磁盘空间的占用没有变化。 1.2 数据空洞 删除,插入等操作会使数据页上出现空元素,也叫做数据空洞。 2....如何避免数据空洞 假设数据表A中存在大量数据空洞,解决的办法就是重建表。 2.1 重建表的流程 建立临时文件,扫描表A主键的所有数据页。 利用表A的记录生成B+树,存储到临时文件X。...生成的临时文件的过程中,所有对表A的操作记录在日志文件中。 临时文件X生成后,将日志文件应用到临时文件,得到新的临时文件 用临时文件 替换表A的数据文件。...2.2 什么是Online DDL 在复制表的同时,将对表的操作,写入日志文件,之后再将日志文件应用到复制文件上,实现复制表的时候,不阻塞其他对表的写入操作,因此称为Online DDL。

    5.7K30

    【迪B课堂】MySQL的show proceslist中存在大量sleep的隐患?

    【迪B课堂】为腾讯云数据库产品经理迪B哥开设的面向数据库开发者、数据库运维人员、云端运维人员的系列培训课程,旨在为开发者解决数据库选择和使用过程中遇到的问题。...《我说》为迪B课堂的答疑系列,3分钟帮您解决数据库日常运维过程中的小难题。 本期解答的问题是:MySQL的show proceslist中存在大量sleep的隐患如何处理?...请求大量的运维同学,这一点的效果是最好的,体现技术和实际业务结合的能力。 通过调整MySQL内部的值来主动解锁Sleep连接,调低空闲等待参数值。 尝试新版本,新版本对连接配置做了优化。...往期推荐 《迪B课堂:如何正确的选择云数据库》 《迪B课堂:使用JSON类型选择MongoDB还是MySQL?》...《迪B课堂:关于MySQL备份周期》 《迪B课堂:MySQL运行时系统CPU压力大怎么办?》

    4K10

    【迪B课堂】MySQL的show proceslist中存在大量sleep的隐患?

    【迪B课堂】为腾讯云数据库产品经理迪B哥开设的面向数据库开发者、数据库运维人员、云端运维人员的系列培训课程,旨在为开发者解决数据库选择和使用过程中遇到的问题。...《我说》为迪B课堂的答疑系列,3分钟帮您解决数据库日常运维过程中的小难题。 本期解答的问题是:MySQL的show proceslist中存在大量sleep的隐患如何处理?...请求大量的运维同学,这一点的效果是最好的,体现技术和实际业务结合的能力。 通过调整MySQL内部的值来主动解锁Sleep连接,调低空闲等待参数值。 尝试新版本,新版本对连接配置做了优化。...往期推荐 《迪B课堂:如何正确的选择云数据库》 《迪B课堂:使用JSON类型选择MongoDB还是MySQL?》...《迪B课堂:关于MySQL备份周期》 《迪B课堂:MySQL运行时系统CPU压力大怎么办?》

    5.1K20

    MySQL中show语法

    5. show index from table_name; -- 显示表的索引。  6. show status; -- 显示一些系统特定资源的信息,例如,正在运行的线程数量。 ...9. show table status; -- 显示当前使用或者指定的database中的每个表的信息。信息包括表类型和表的最新更新时间。 ...如果一个用户没有一个表的任何权限,表将不在SHOW TABLES或mysqlshow db_name中的输出中显示 大家可能还记得describe table_name ,它实现的是与show columns...from db_name.table_name一样的效果 show status将可以用mysqlshow --status 来得到同样的效果 列 含义 Name 表名 Type 表的类型 (ISAM...如果Handler_read_rnd太大,那么你很可能有大量的查询需要MySQL扫描整个表或你有没正确使用键值的联结(join)。

    1.4K21

    MySQL中 insert into select和create table的区别 已经复制表的方法

    MySQL中 insert into select和create table的区别 MySQL一般我们在生产上备份数据通常会用到 这两种方法: INSERT INTO SELECT CREATE TABLE...有主键而且不为空,则 field1, field2…中必须包括主键 在执行语句的时候,MySQL是逐行加锁的(扫描一个锁一个)。...table2; -- 创建一个表结构与table2一模一样的表,复制结构同时也复制数据,但是指定新表的列名; 后面两种格式,如果后面跟上合适的查询条件,可以只复制符合条件的数据到新的表中。...不能将原表中的default value也一同迁移过来 3 .区别 首先,最大的区别是二者属于不同类型的语句,INSERT INTO SELECT 是DML语句(数据操作语言,SQL中处理数据等操作统称为数据操纵语言...),完成后需要提交才能生效,CREATE TABLE AS SELECT 是DDL语句(数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言 ),执行完直接生效,不提供回滚,效率比较高。

    4.1K30

    MySQL 配置主从复制实践

    启动slave服务 mysql> start slave; mysql> stop slave; 通过show slave status命令查看主从复制状态,show processlist查看master...网络连接问题 通过show slave status命令查看主从复制状态 连接connection错误,先考虑是否网络互通,ping一下 然后再检查从库里面的配置信息是否正确 如果都正确,还可以检查一下...如果都是物理机通信,那直接写正确的ip即可 可以在MySQL数据库下的mysql库的user表中更改允许登录的ip 然后重新赋予权限 mysql> GRANT REPLICATION SLAVE ON.... binlog的position问题 在master中查看show master status一下binlog日志文件名以及position,然后用命令重新配置slave,比如: mysql> CHANGE...SQL线程出错 问题发生原因如下: 首先配置主从复制的时候,slave的mytest库中没有user表,而master的mytest库已经有user表了 配置好主从复制后直接drop table mytest.user

    70350

    mysql基础语句1

    user ben to bforta; 删除用户,同时会删除与用户相关的所有权限 drop user bforta; 查看用户权限 show grants for ben; 更新用户密码 set password...’; mysql> flush privileges; mysql> quit; *特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了 ,而是将加密后的用户密码存储于...显示表 show tables; 表的操作 显示数据表的结构 describle 表名; 创建表 create table 表名 删除表中的某个行 delete 删除表,而不是其内容,没有确认,...,而不是逐行删除表中的数据) delete from 表名; 插入表记录 insert into 表名 values(, ,); 给表添加列 alter table vendors add vend_phone...analyze table orders; 发现和修复问题 check table orders, orderitems; 显示当前状态 show status; 显示变量 show variables

    59120

    mysql主从复制

    :/var/lib/mysql/ 注意拷贝过去后权限的设置 chown -R mysql.mysql /var/lib/mysql 数据量大可以用mysqldump导出. 7.解锁 mysql >...在该例子中,二进制日志值为mysql-bin.003,偏移量为73。记录该值。以后设置从服务器时需要 使用这些值。它们表示复制坐标,从服务器应从该点(也可以是任何点)开始从主服务器上进行新的更新。...status\G; 会得到类似下面的列表: Slave_IO_Running: Yes Slave_SQL_Running: Yes 都为yes,则配置正确. 11.进行测试: 主库创建表,...虽然重新生成了master.info,但是并不起用,最好,将从机的mysql进程重启一下, * LOAD TABLE tblname FROM MASTER #从机运行,从主机端重读指定的表的数据...MASTER STATUS #主机运行,看日志导出信息 * SHOW SLAVE HOSTS #主机运行,看连入的从机的情况。

    1.2K30
    领券