MySQL数据库空间使用情况查询

如果想知道MySQL数据库中每个表占用的空间、表记录的行数的话,可以打开MySQL的 information_schema 数据库。在该库中有一个 TABLES 表,这个表主要字段分别是:

TABLE_SCHEMA : 数据库名
TABLE_NAME:表名
ENGINE:所使用的存储引擎
TABLES_ROWS:记录数
DATA_LENGTH:数据大小
INDEX_LENGTH:索引大小
其他字段请参考MySQL的手册,这几个字段对我们来说最有用。
一个表占用空间的大小,相当于是 数据大小 + 索引大小,

进入information_schema库

USE information_schema;

1.查看MySQL某个库的大小;

MariaDB [information_schema]> select concat(round(((sum(DATA_LENGTH)+sum(INDEX_LENGTH))/1024/1024),2),"MB") as db_size from information_schema.tables  where table_schema='DB_NAME';
+------------+
| db_size |
+------------+
| 11199.94MB |
+------------+
1 row in set (0.26 sec)

2.查看库中每张表的大小以及行数;

MariaDB [information_schema]> SELECT TABLE_NAME as "表名",DATA_LENGTH+INDEX_LENGTH as "数据+索引",TABLE_ROWS as "行数" FROM information_schema.TABLES WHERE TABLE_SCHEMA='DB_NAME';
+-------------------------------+---------------+----------+
| 表名 | 数据+索引 | 行数 |
+-------------------------------+---------------+----------+
| tbl_aba| 16384 | 5 |
| tbl_abb| 11691622400 | 35265564 |
| tbl_abc| 20529152 | 51291 |
| tbl_abd| 4227072 | 11475 |
| tbl_abe| 17383424 | 41664 |
| tbl_abf| 16384 | 4 |
| tbl_abg| 16384 | 17 |
| tbl_abh| 16384 | 18 |
| tbl_abi| 16384 | 40 |
| tbl_abj| 16384 | 5 |
| tbl_abk| 16384 | 7 |
| tbl_abl| 16384 | 17 |
| tbl_abm| 16384 | 17 |
| tbl_abn| 16384 | 37 |
+-------------------------------+---------------+----------+
20 rows in set (0.22 sec)

3.查看某张表数据数据、索引等信息的量;

MariaDB [information_schema]> select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data_size,
-> concat(round(sum(MAX_DATA_LENGTH/1024/1024),2),'MB') as max_data_size,
-> concat(round(sum(INDEX_LENGTH/1024/1024),2),'MB') as index_size,
-> concat(round(sum(DATA_FREE/1024/1024),2),'MB') as data_free
-> from TABLES where table_schema='DB_NAME' and table_name='TABLES_NAME';
+-----------+---------------+------------+-----------+
| data_size | max_data_size | index_size | data_free |
+-----------+---------------+------------+-----------+
| 6397.00MB | 0.00MB | 4753.00MB | 7.00MB |
+-----------+---------------+------------+-----------+
1 row in set (0.20 sec)

MySQL查看库表的大小的更多相关文章

  1. MySQL查看数据库表容量大小

    本文介绍MySQL查看数据库表容量大小的命令语句,提供完整查询语句及实例,方便大家学习使用. 1.查看所有数据库容量大小 select table_schema as '数据库', sum(table ...

  2. mysql查看各个表的大小

    information_schema 数据库,在该库中有一个 TABLES 表,这个表主要字段分别是: TABLE_SCHEMA : 数据库名 TABLE_NAME:表名 ENGINE:所使用的存储引 ...

  3. mysql查看某个表的列名

    mysql查看某个表的列名mysql -uusername -p 输入密码按登录mysqlshow databases; 查看有哪些数据库use dbname; 选择数据库show tables:查看 ...

  4. MYSQL查看数据表最后更新时间

    MYSQL查看数据表最后更新时间 - 拨云见日 - CSDN博客 https://blog.csdn.net/warnerwu/article/details/73352774 mysql> S ...

  5. SQL查看所有表的大小

    --查看所有表的大小 declare @id int ) declare @pages int declare @dbname sysname ,) ,) ,) create table #spt_s ...

  6. mysql查看库、表占用存储空间大小

    http://blog.csdn.net/bzfys/article/details/55252962 1. 查看该数据库实例下所有库大小,得到的结果是以MB为单位 <span class=&q ...

  7. MySQL统计库表大小

    统计每个库每个表的大小是数据治理的其中最简单的一个要求,本文将从抽样统计结果及精确统计结果两方面来统计MySQL的每个库每个表的数据量情况. 1.统计预估数据量 mysql数据字典库informati ...

  8. mysql 查看库结构---查看表结构

    查看库结构:SHOW DATABASES; 查看表结构: show tables即为显示当前数据库中所有的表.又如: mysql> use dbname //进入dbname库Database ...

  9. MySQL查看 InnoDB表中每个索引的高度

    我们都知道MySQL里,索引通常用B+树来实现的.B+树的叶子结点才具体保存数据(聚簇索引保存的是行数据:普通索引是主键,如有需要得回表),非叶子结点都是用来索引叶子结点的.假设索引高度为h,那么每次 ...

随机推荐

  1. Mysql多实例安装笔记

    参考: 系统:KaliLinux (x86_64) 软件下载 1.下载地址: 2.选择5.6版本 安装 1.准备文件和目录 tar -zxvf mysql-5.6.40-linux-glibc2.12 ...

  2. Linux内核调试:kdump、vmcore、crash、kernel-debuginfo【转】

    转自:https://blog.csdn.net/guowenyan001/article/details/19807555 一.简介 linux内核发送崩溃时,kdump会生成一个内核转储文件vmc ...

  3. Liunx之KVM搭建图形化的WEB

    作者:邓聪聪 我们常在Windowns下使用VMware,当然在Liunx中也有这样的软件供我们使用.生产环境的KVM宿主机越来越多,需要对宿主机的状态进行调控.这里用webvirtmgr进行管理.图 ...

  4. vs 快捷键操作

    各个版本可能不同,以vs 2013为例. 1.调试时,调出即时窗口:[Ctrl+Alt+i] 2.注释/取消注释:[Ctrl+K Ctrl+C]/[Ctrl+K Ctrl+U]

  5. Ridis

    Redis介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的values类型相对更多,包括字符串.列表.哈希散列表.集合,有序集合. 这些数据类型都支持push/ ...

  6. $Django 图片验证刷新 上传头像

    1.图片验证刷新 $('img').click(function () { $('img')[0].src+='?' }) 2.上传头像 1.模板 <div class="form-g ...

  7. zabbix3.2监控redis

    redis的监控 .监控脚本 # vim /usr/local/zabbix_agents_3.2.0/scripts/redismonitor.sh #! /bin/bash #Name: redi ...

  8. Centos 7 安装Docker-ce记录

    以前尝试过在centos 6上安装Docker , 需要升级内核,支持aufs,比较麻烦:在使用过程中出现过Docker挂掉的情况,官方建议在64 位 centos 7 上运行,本文将安装步骤记录下来 ...

  9. Vuex与axios介绍

    Vuex集中式状态管理里架构 axios (Ajax) Vuex集中式状态管理架构 -简单介绍: vuex是一个专门为Vue.js设计的集中式状态管理架构. 我们把它理解为在data中需要共享给其他组 ...

  10. pyhon 前面补充和set

    一, 主要内容. 补充一个字符串的基本操作 li = ["李嘉诚", "麻花藤", "黄海峰", "刘嘉玲"] s = ...