网站首页 > 技术教程 正文
一. MySQL数据类型
1. 整数类型
注:MySQL可以为整数类型指定宽度,比如 int(3)、int(5),这个限制不是限制value的合法范围,所以对绝大数应用没有任何意义,对于存储而言,int(3) 和 int(5) 是相同的,只是对一些MySQL的交互工具显示字符的个数有用,如mysql客户端。
2. 浮点类型
注:float和double类型会存在不够精确的问题,高精度要求建议使用decimal类型,可能会出现下图现象:
3. 字符类型
补充:char和varchar的区别
4. 日期类型
5. 二进制类型
6. 大数据类型
7. 枚举类型和集合类型
(1). 枚举
Enum枚举类型是字符串类型,mysql在存储此类型数据时,直接转化成数字存储而不是字符串,可以节省空间,并且在表的.frm文件中存储“数字----字符串 ”之间的对应关系。
Enum枚举类型最多可以有65535个值,当插入数字到枚举类型的字段时,数字会被当做枚举值的第n个值插入。
(2). 集合
Set集合类型是字符串类型,可以含有0个或多个值,其中每个值都需要在创建字段的适合指定到集合中。
补充:MySQL和C#对应关系
更多C++后台开发技术点知识内容包括C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,音视频开发,Linux内核,TCP/IP,协程,DPDK多个高级知识点。
C/C++后台开发架构师免费学习地址:C/C++Linux鏈嶅姟鍣ㄥ紑鍙/鍚庡彴鏋舵瀯甯堛EUR愰浂澹版暀鑲层EUR-瀛︿範瑙嗛鏁欑▼-鑵捐璇惧爞
【文章福利】另外还整理一些C++后台开发架构师 相关学习资料,面试题,教学视频,以及学习路线图,免费分享有需要的可以点击 「链接」 免费领取
二. 存储引擎
1. 含义
存储引擎是 MySQL 中具体与文件打交道的子系统,它是根据 MySQL AB 公司提供的文件访问层抽象接口定制的一种文件访问机制,这种机制就叫作存储引擎,下面是一些常用的存储引擎,有远古时期的 MyISAM、支持事务的 InnoDB、内存类型的 Memory、归档类型的 Archive、列式存储的 Infobright,以及一些新兴的存储引擎,以 RocksDB 为底层基础的 MyRocks 和 RocksDB,和以分形树索引组织存储的 TokuDB。
注:MySQL 5.6 版本之前,默认的存储引擎都是 MyISAM,但 5.7 版本及以后默认的存储引擎就是 InnoDB 了。
2. MyISAM和InnoDB对比
(1). 功能对比
InnoDB 支持 ACID 的事务 4 个特性,而 MyISAM 不支持;
InnoDB 支持 4 种事务隔离级别,默认是可重复读 Repeatable Read 的,MyISAM 不支持;
InnoDB 支持 crash 安全恢复,MyISAM 不支持;
InnoDB 支持外键,MyISAM 不支持;
InnoDB 支持行级别的锁粒度,MyISAM 不支持,只支持表级别的锁粒度;
InnoDB 支持 MVCC,MyISAM 不支持;
InnoDB 表最大还可以支持 64TB,支持聚簇索引、支持压缩数据存储,支持数据加密,支持查询/索引/数据高速缓存,支持自适应hash索引、空间索引,支持热备份和恢复等,如下图所示。
(2). 性能对比
A. 读写混合模式下,随着 CPU 核数的增加,InnoDB 的读写能力呈线性增长。
B. 在测试用例里,最高可达近 9000 的 TPS,但 MyISAM 因为读写不能并发,它的处理能力跟核数没关系,呈一条水平线,TPS 低于 500。
C. 只读模式下,随着 CPU 核数的增加,InnoDB 的读写能力呈线性增长,最高可达近 14000 的 TPS,但 MyISAM 的处理能力不到 3000 TPS。
3. InnoDB存储引擎核心点
原文链接:第五节:MySQL的数据类型和存储引擎介绍 - Yaopengfei - 博客园
猜你喜欢
- 2025-07-24 MYSQL存储引擎InnoDB(三十八):在 Linux 上优化表空间的空间分配
- 2025-07-24 高效Linux SA(高效办成一件事)
- 2025-07-24 MySQL:物理备份工具XBK(mysql常用备份方案)
- 2025-07-24 MySQL 9.3 引入增强的JavaScript支持
- 2025-07-24 MySQL5.7系统库information_schema之第(9)个表 GLOBAL_STATUS :
- 2025-07-24 1-开篇,开始学习 鸟哥的Linux私房菜 这本书了
- 2025-07-24 高考志愿填报V3小程序公众号SAAS系统开发
- 2025-07-24 重装windows的3种方法(重装系统win10教程)
- 2025-07-24 从零开始学 MySQL—数据库和数据表操作
- 2025-07-24 MySQL5.7系统库information_sch之第(10)个表 GLOBAL_VARIABLES :
你 发表评论:
欢迎- 08-06linux 和 windows文件格式互相转换
- 08-06谷歌 ChromeOS 已支持 7z、iso、tar 文件格式
- 08-06Linux下比较文件内容的6种方法
- 08-06文件格式及功能汇总
- 08-0610个Linux文件内容查看命令的实用示例
- 08-06Linux-如何区分不同文件类型
- 08-06Zabbix技术分享——监控windows进程资源使用情况
- 08-06Linux系统卡顿?学会ps命令这三招,轻松定位问题进程
- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)