数据库类型空间效率探索(四)-tinyint与enum与set
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的更多相关文章
- 数据库类型空间效率探索(五)- decimal/float/double/varchar
以下测试为userinfo增加一列,列类型分别为decimal.float.double.varchar.由于innodb不支持optimize,所以每次测试,都会删除表test.userinfo,重 ...
- 数据库类型空间效率探索(三)-char
测试环境 表信息 表数据量22.23万,占用空间44.494M 用到的sql语句 增加列:alter table t_type add column new_column char(1) defaul ...
- Oracle数据库类型
Oracle数据库类型 字符类型char[(length)] 定长字符 最长2000字节varchar2[(length)] 可变长度的字符数据类型,最长4000字节NCHAR[(length)] 固 ...
- MySql数据库优化必须注意的四个细节(方法)
MySQL 数据库性能的优化是 MySQL 数据库发展的必经之路, MySQL 数据库性能的优化也是 MySQL 数据库前进的见证,下文中将从从4个方面给出了 MySQL 数据库性能优化的方法. 1. ...
- 数据库表空间收缩之pg_squeeze,pg_repack
数据库表空间收缩之pg_squeeze,pg_repack 目录 数据库表空间收缩之pg_squeeze,pg_repack pg_squeeze1.2 原理 优点 安装 使用 pgstattuple ...
- oracle数据库表空间追加数据库文件方法
oracle数据库表空间追加数据库文件方法 针对非大文件方式表空间,允许追加文件进行表空间的扩展,单个文件最大大小是32G 第一种方式:表空间增加数据文件 www.2cto.com 1 ...
- Java与数据库类型对照表
数据库类型 Java类型 INTEGER int or java.lang.Integer BIGINT long or java.lang.Long SMALLINT short o ...
- Spring MVC动态切换数据源(多数据库类型)
最近由于项目需求,需要将Sql Server 和 Mysql 两种数据库整合到一个项目,项目的用到的框架是SSM. 因此尝试了利用AOP切面来切每次执行的Servcie方法,根据Service所在的包 ...
- [C#]实现任何数据库类型的DbHelper帮助类
本文章为原创内容,如需转载,请注明作者及出处,谢谢! 一.在System.Data.Common命名空间下,存在这样的一个类: // // 摘要: // 表示一组方法,这些方法用于创建提供程序对数据源 ...
随机推荐
- linux base shell 基础语法2
转载 http://blog.csdn.net/aggrelxf/article/details/8263110 单引 双引 反引用[] [[]] 将命令的输出读入一个变量中,可以将它放入双引号中,即 ...
- spark 常用技巧总结2
zip拉链操作 def zip[U](other: org.apache.spark.rdd.RDD[U])(implicit evidence$10: scala.reflect.ClassTag[ ...
- call 和 apply
call和apply作用一样,都是为了转移this,区别在于传入参数的方式不同. this指当前方法所在的对象,如果方法的外面没有对象,则默认是window.由于闭包虽在调用的方法中,但是在创建的时候 ...
- tp5增删改查
tp5框架增删改查,相对于以前的源生代码而言,非常简单,主要是为了熟练的应用框架,下面的代码主要是tp5框架的增删改查,让我们的更好 掌握框架. <?php namespace app\inde ...
- (已解决)搭建ssm框架时给springmvc传入对象传不进去,传单个字符串可以
问题如题: springmvc会自动解析传入的内容,只要将表单中的对象名字和pojo一一对应,否则会报错. jsp默认好像是会加上请求头. 如果要是用其他的方式去给接口传入对象.要加上请求头. Con ...
- es6初级之箭头函数实现隔行变色
无论是使用哪种方式实现隔行变色的效果,它的思路都是一样的: 1.定义很多个div 2.给div 加背景 3.鼠标移动到div上时,当前div 背景变色 4.鼠标移出div时,当前div背景恢复 以上4 ...
- 架构之微服务(zookeeper)转
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等.Zookeeper是hadoop的一个子项目,其 ...
- Spring AOP demo 和获取被CGLIB代理的对象
本文分为两部分:1)给出Spring AOP的一个例子(会使用CGLIB代理):2)给出获取被CGLIB代理的原始对象. 1.Spring AOP Demo 这部分参考了博文(http://www.v ...
- 【372】Kaggle 相关经验
参考:机器学习系列(3)_逻辑回归应用之Kaggle泰坦尼克之灾 参考:Kaggle泰坦尼克特征工程和模型融合 『解决一个问题的方法和思路不止一种』『没有所谓的机器学习算法优劣,也没有绝对高性能的机器 ...
- 7.mysql-安装和卸载.md
目录 卸载 停止window的MySQL服务. 卸载MySQL安装程序.找到"控制面板"-> "程序和功能",卸载MySQL程序. 安装 MYSQL的安装 ...