MySQL数据库查看数据表占用空间大小和记录数的方法_Mysql

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

TABLE_SCHEMA : 数据库名
TABLE_NAME:表名
ENGINE:所使用的存储引擎
TABLES_ROWS:记录数
DATA_LENGTH:数据大小
INDEX_LENGTH:索引大小

其他字段请参考MySQL的手册,这几个字段对我们来说最有用。
一个表占用空间的大小,相当于是 数据大小 + 索引大小,

示例:

1.想查看hx库的所有表大小,可以使用:

复制代码 代码如下:

SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='hx';

+-------------------+--------------------------+------------+
| TABLE_NAME        | DATA_LENGTH+INDEX_LENGTH | TABLE_ROWS |
+-------------------+--------------------------+------------+
| enjoy_data    |                  6979584 |      70113 |
| hx_record      |                113410048 |     753279 |
| itlearner_record       |              21835546624 |  104917777 |
| tmp_day_id        |                    17326 |        811 |
+-------------------+--------------------------+------------+

2.想查看hx库的enjoy表大小,可以使用:

复制代码 代码如下:

SELECT DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='hx' AND TABLE_NAME = 'enjoy_data';

返回:

复制代码 代码如下:

+--------------------------+------------+
| DATA_LENGTH+INDEX_LENGTH | TABLE_ROWS |
+--------------------------+------------+
|                     6979584 |          70113 |
+--------------------------+------------+

时间: 2024-08-03 14:09:19

MySQL数据库查看数据表占用空间大小和记录数的方法_Mysql的相关文章

修改MySQL数据库中表和表中字段的编码方式的方法_Mysql

今天向MySQL数据库中的一张表添加含有中文的数据,可是老是出异常,检查程序并没有发现错误,无奈呀,后来重新检查这张表发现表的编码方式为latin1并且原想可以插入中文的字段的编码方式也是latin1,然后再次仔细观察控制台输出的异常,进一步确定是表和表中字段编码不当造成的,那就修改表和其中对应的字段呗,网上找了一会儿,你别说还真有,执行完sql脚本后果然可以存入中文了,尽管如此还是认为有必要总结一下,古人云:好记性不如烂笔头嘛,呵呵呵. 修改表的编码方式:ALTER TABLE `test`

mysql数据库中有数据表但php无法引用

问题描述 mysql数据库中有数据表但php无法引用 <?php //1.连接数据库 try{ $pdo=new PDO("mysql:127.0.0.1;dbname=myapp","root",""); }catch(PDOException $e){ die("数据连接失败".$e->getMessage()); } //2.执行SQL查询,并解析与遍历 $sql="SELECT * FROM us

mysql数据库修改数据表引擎的方法_Mysql

对于MySQL数据库,如果你要使用事务以及行级锁就必须使用INNODB引擎.如果你要使用全文索引,那必须使用myisam. INNODB的实用性,安全性,稳定性更高但是效率比MYISAM稍差,但是有的功能是MYISAM没有的.修改MySQL的引擎为INNODB,可以使用外键,事务等功能,性能高. 查看数据表的状态 复制代码 代码如下: SHOW TABLE STATUS FROM sites WHERE NAME='site';  SHOW TABLE STATUS FROM db_name W

Mysql数据库中把varchar类型转化为int类型的方法_Mysql

在上篇文章给大家讲了MySQL数据库中把int转化varchar引发的慢查询,本文给大家介绍Mysql数据库中把varchar类型转化为int类型的方法,一起看看吧! mysql为我们提供了两个类型转换函数:CAST和CONVERT,现成的东西我们怎能放过? CAST() 和CONVERT() 函数可用来获取一个类型的值,并产生另一个类型的值. 这个类型 可以是以下值其中的 一个: BINARY[(N)] CHAR[(N)] DATE DATETIME DECIMAL SIGNED [INTEG

Mysql数据库提示数据表损失问题修复解决办法

最近一段时间,公司的服务器每隔一段时间(大概24个小时),就会出现无法访问的情况,然后重启了服务器,一切都恢复了正常,一直都不知道是什么问题,于是就问了机房的工程师,他帮我分析了服务器的运行日志,发现了大量的Mysql的错误.     基本上每隔20秒,就会出现一次错误提示,看着这个的提示应该是这个表需要修复了 错误产生原因 在网上查了查为什么会出现表损坏,基本上得到以下的原因: 频繁查询和更新Mysql数据库表,造成的索引错误. MYSQL数据库因为某种原因而受到了损坏,如:数据库服务器突发性

PHP创建MYSQL数据库与数据表常用命令和数据类型设定

其实准备学习PHP语言已经有计划好几年,但都忙于一些事情没有静心尝试,鉴于项目的需要,必须要学点技术,所以准备把前端.前端框架以及PHP这个后端应用逐渐的学习起来.根据以往的学习进度和习惯,还是直接做项目比较直接,因为老蒋自认为不是很聪明,那种函数.数组真的搞不明白,也记不住,所以直接从实例下手. 在涉及到数据库添加的时候,我们可以直接在PHPMYADMIN面板中直接可视化添加,但是我还是喜欢直接用SQL命令添加,这样比较方便,看似也高大上,更有平时使用VPS的时候也有点习惯. 在这个项目中,我

解决Mysql数据库插入数据出现问号(?)的解决办法_Mysql

首先,我用的mysql数据库是5.7.12版本. 出现的问题: 1.插入数据显示错误,插入不成功,出现:Incorrect string value: '\xCD\xF5\xD5\xBC\xBE\xA9' for column 'Sname' at row 1 2.插入中文,虽然插入成功,但是显示:?? 解决方法: 在my.ini文件中的 [mysqld] 中加入 #character-set-server=utf8 如图所示,必须在蓝圈的上方,就是说,蓝圈内的内容必须在[mysqld]的最下面

删除mysql数据库所有数据表方法

 代码如下 复制代码 <?php $hostname ='localhost'; $user = 'user'; $password = 'password'; $dbname = 'dbname';   $connect = mysql_connect($hostname,$user,$password); mysql_select_db($dbname);   $result = mysql_query("show table status from ".$dbname,$c

php mysql-在php中从Excel表中向mysql数据库导入数据

问题描述 在php中从Excel表中向mysql数据库导入数据 请问:如何实现在php中从Excel表中向mysql数据库导入数据,要注意那些东西? 解决方案 http://www.jb51.net/article/26921.htm 解决方案二: http://blog.csdn.net/china_skag/article/details/7098473 解决方案三: http://blog.csdn.net/jiaocaigeng/article/details/9470571 解决方案四