mysql> select count(*) from userinfo;
+----------+
| count(*) |
+----------+
| 115597 |
+----------+
1 row in set (0.00 sec)

mysql> select concat(truncate(sum(data_length)/1024/1024,3),'MB') as data_size,

-> concat(truncate(sum(max_data_length)/1024/1024,3),'MB') as max_data_leng
th,
-> concat(truncate(sum(data_free)/1024/1024,3),'MB') as data_free,
-> concat(truncate(sum(index_length)/1024/1024,3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.477MB | 268435455.999MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+

以下测试tinyint

mysql> ALTER TABLE `userinfo`
-> ADD COLUMN `type` tinyint NOT NULL DEFAULT 0 COMMENT '反应类型' AFTER `i
ntegral`;
Query OK, 115597 rows affected (0.54 sec)
Records: 115597 Duplicates: 0 Warnings: 0

mysql> select concat(truncate(sum(data_length)/1024/1024,3),'MB') as data_size,

-> concat(truncate(sum(max_data_length)/1024/1024,3),'MB') as max_data_leng
th,
-> concat(truncate(sum(data_free)/1024/1024,3),'MB') as data_free,
-> concat(truncate(sum(index_length)/1024/1024,3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.477MB | 268435455.999MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+

mysql> insert into userinfo(app,imei,type) values('','0',43);
Query OK, 1 row affected (0.00 sec)

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo'
-> ;
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.478MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.00 sec)

mysql> update userinfo set type=30;
Query OK, 115598 rows affected (2.70 sec)
Rows matched: 115598 Changed: 115598 Warnings: 0

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 22.038MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.00 sec)

以下测试enum

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.478MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+

mysql> ALTER TABLE `userinfo`
-> ADD COLUMN `type` enum('未知','化合','分解','置换','复分解','取代','加成'
,'消去','加聚','酯化','水解','聚合','缩聚','吸热','放热','氧化','还原') AFTER `i
ntegral`;
Query OK, 115597 rows affected (0.63 sec)
Records: 115597 Duplicates: 0 Warnings: 0

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.694MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.00 sec)

mysql> update userinfo set type='复分解';
Query OK, 115597 rows affected (2.54 sec)
Rows matched: 115597 Changed: 115597 Warnings: 0

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.694MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.00 sec)

以下测试set

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo'
-> ;
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.478MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.00 sec)

mysql> ALTER TABLE `userinfo`
-> ADD COLUMN `type` set('未知','化合','分解','置换','复分解','取代','加成',
'消去','加聚','酯化','水解','聚合','缩聚','吸热','放热','氧化','还原') AFTER `in
tegral`;
Query OK, 115597 rows affected (0.61 sec)
Records: 115597 Duplicates: 0 Warnings: 0

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 21.590MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.01 sec)

mysql> update userinfo set type='加成';
Query OK, 115597 rows affected (3.63 sec)
Rows matched: 115597 Changed: 115597 Warnings: 0

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 23.235MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.00 sec)

mysql> update userinfo set type='加成,取代,消去,放热';
Query OK, 115597 rows affected (4.37 sec)
Rows matched: 115597 Changed: 115597 Warnings: 0

mysql> select concat(round(sum(data_length/1024/1024),3),'MB') as data_size,
-> concat(round(sum(max_data_length/1024/1024),3),'MB') as max_data_length,
-> concat(round(sum(data_free/1024/1024),3),'MB') as data_free,
-> concat(round(sum(index_length/1024/1024),3),'MB') as index_length
-> from information_schema.tables where table_name='userinfo';
+-----------+-----------------+-----------+--------------+
| data_size | max_data_length | data_free | index_length |
+-----------+-----------------+-----------+--------------+
| 23.235MB | 268435456.000MB | 0.000MB | 1.319MB |
+-----------+-----------------+-----------+--------------+
1 row in set (0.01 sec)

数据库类型空间效率探索(四)-tinyint与enum与set的更多相关文章

  1. 数据库类型空间效率探索(五)- decimal/float/double/varchar

    以下测试为userinfo增加一列,列类型分别为decimal.float.double.varchar.由于innodb不支持optimize,所以每次测试,都会删除表test.userinfo,重 ...

  2. 数据库类型空间效率探索(三)-char

    测试环境 表信息 表数据量22.23万,占用空间44.494M 用到的sql语句 增加列:alter table t_type add column new_column char(1) defaul ...

  3. Oracle数据库类型

    Oracle数据库类型 字符类型char[(length)] 定长字符 最长2000字节varchar2[(length)] 可变长度的字符数据类型,最长4000字节NCHAR[(length)] 固 ...

  4. MySql数据库优化必须注意的四个细节(方法)

    MySQL 数据库性能的优化是 MySQL 数据库发展的必经之路, MySQL 数据库性能的优化也是 MySQL 数据库前进的见证,下文中将从从4个方面给出了 MySQL 数据库性能优化的方法. 1. ...

  5. 数据库表空间收缩之pg_squeeze,pg_repack

    数据库表空间收缩之pg_squeeze,pg_repack 目录 数据库表空间收缩之pg_squeeze,pg_repack pg_squeeze1.2 原理 优点 安装 使用 pgstattuple ...

  6. oracle数据库表空间追加数据库文件方法

    oracle数据库表空间追加数据库文件方法   针对非大文件方式表空间,允许追加文件进行表空间的扩展,单个文件最大大小是32G  第一种方式:表空间增加数据文件    www.2cto.com   1 ...

  7. Java与数据库类型对照表

     数据库类型  Java类型  INTEGER  int or java.lang.Integer  BIGINT  long or java.lang.Long  SMALLINT  short o ...

  8. Spring MVC动态切换数据源(多数据库类型)

    最近由于项目需求,需要将Sql Server 和 Mysql 两种数据库整合到一个项目,项目的用到的框架是SSM. 因此尝试了利用AOP切面来切每次执行的Servcie方法,根据Service所在的包 ...

  9. [C#]实现任何数据库类型的DbHelper帮助类

    本文章为原创内容,如需转载,请注明作者及出处,谢谢! 一.在System.Data.Common命名空间下,存在这样的一个类: // // 摘要: // 表示一组方法,这些方法用于创建提供程序对数据源 ...

随机推荐

  1. python中的lstrip、rstrip、strip

    lstrip()移除左侧空白符 rstrip()移除右侧空白符 strip()移除两边的空白符 1 a = " hello world" 2 a1 = a.lstrip()3 pr ...

  2. hdfs 如何实现退役节点快速下线(也就是退役节点上的数据块快速迁移)speed up decommission blocks removal

    以下是选择复制源节点的代码 代码总结: A=datanode上要复制block的Queue size与 target datanode没被选出之前待处理复制工作数之和. 1. 优先选择退役中的节点,因 ...

  3. NFS服务基本配置及使用

    操作系统:redhat 7.2 参考链接:https://www.cnblogs.com/dscode/p/6146409.html NFS:Network File System 一.服务器端配置 ...

  4. JsonConvert

    ///"{'jsonParam' : " + jsonText + "}" /* Dictionary<string, object> tmp = ...

  5. day11-元组与字典

    1.元组Tuple与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用中括号.元组可以查询,可以使用内置函数count.index.但是不能修改.增加.删除(儿子不能,孙子有可能). ...

  6. vue:再vue-cli项目中使用window以及调用window上的方法

    一: 1:在main.js中 Vue.prototype.myfunction = function() {/*你的自定义Vue方法*/} 2:在mounted(或其他生命周期中) 或者 method ...

  7. Go的50度灰:Golang新开发者要注意的陷阱和常见错误(转)

    目录 [−] 初级 开大括号不能放在单独的一行 未使用的变量 未使用的Imports 简式的变量声明仅可以在函数内部使用 使用简式声明重复声明变量 偶然的变量隐藏Accidental Variable ...

  8. shell编程:基本语法

    要掌握一门语言,就要先掌握它的语法.如同C语言一般,shell也有自己的语法. 变量 按照惯例,Shell变量通常由字母加下划线开头,由任意长度的字母.数字.下划线组成.有两种类型的Shell变量: ...

  9. C++ new 和malloc 区别

    1.分配地方不同,malloc是堆上面,new是自由存储区域 2.malloc/delete是函数,new/delete是操作符,可以重载 3.malloc 要指定大小,返回的是void*指针,开辟的 ...

  10. 【原创】利用Office宏实现powershell payload远控

    本文将演示使用Veil-Evasion生成远控所需要的payload以及监听器,然后使用MacroShop生成payload 相关的VBA代码,最后演示将VBA代码写入.doc文本文档的宏中. 环境: ...