深入浅出MySQL——小结

1.基础概念

1.1.存储引擎

MyISAM
  1. 不支持事务,不支持外键,访问速度快
  2. 每张表由3个文件构成照(存储表定义文件,数据存储文件,索引文件)
  3. 支持3种存储格式(默认为静态表,会自动将把保存的内容的空格去除)
InnoDB
  1. 外键绑定功能
  2. 提供事务能力
其他

MEMORY,MERGE,TokuDB

1.2.数据类型的选择

varchar,text,blob
  1. text,blob可以存储大文本,但是若存在大量删除该字段的情况时,最好定时采用optimize命令优化表结构
  2. text,blob的精确匹配性能的提升可以采用Synthetic索引方案来实现(即对text字段进行md5哈希散列,每次用md5值去查),进一步,对于前缀索引,即:xxx%,的搜索,可以通过对text中前n个字段进行索引创建来提高效率——8.2节
浮点数与定点数

选定点数decimal

DATETIME和TIMESTAMP

DATETIME适用于较长时间范围

TIMESTAMP适用于需要区分时期的情况,他会自动换算时区(最长时间为2038年。。。)

1.3.字符集

合适的字符集选取可以减少数据量,从而减少磁盘IO,提升查询速度。

字符集-character

对于纯中文汉字的数据库应该采用GBK字符集(汉字,英文都是2字节),而含有英文的数据库则应采用UTF-8字符集(汉字3字节,英文1字节)

校对规则-collation

一个字符集可以有多个校对规则,校对规则是用了比较字符串的,即在select的时候,判断where条件中的字符串是否和数据库数据相等,比如忽略大小写的校对规则等等。

字符集
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值