为了账号安全,请及时绑定邮箱和手机立即绑定
  • 222222222222

    查看全部
  • 111111111111

    查看全部
  • 水平拆分:对于表数据特别多的,可以进行水平拆分(表结构一致);

    http://img1.sycdn.imooc.com//602cac630001df8f09510406.jpg

    查看全部
  • 垂直拆分:为了控制表的宽度,提供IO读取效率;

    1、经常一起查询的列放一起;

    2、text,blob等大字段拆分出到附表中;http://img1.sycdn.imooc.com//602cabff0001b3f311220313.jpg


    查看全部
  • 数据库中合适的操作:

    1、批量操作(优先)VS逐条操作;

    2、禁止使用Select*这样的查询,使用具体列查询(造成IO浪费,程序出错);

    3、控制使用用户自定义函数(使用方便但是低效);

    4、不要使用数据库中的全文索引(如果需要可以使用搜索引擎完成);

    查看全部
  • 表结构维护:

    注意事项:

    1、使用在线变更(MySQL5.6之后支持)表结构的工具;

    2、同时对数据字典进行维护;

    3、控制表的宽度和大小(随着业务的增加表会变的非常宽,可对表进行垂直拆分)

    查看全部
  • 索引维护:

    索引选择:

    1、出现在WHERE从句,GROUP BY从句,ORDER BY 从句的列;

    2、可选择性高的列要放大哦索引的前面;

    3、索引不要包含太长的数据类型(对于长的可以截取前面的检索,或者转换成MD5后索引);

    注意事项:

    1、索引不是越多越好,过多会降到读写效率;

    2、定期维护索引碎片;

    3、SQL语句中不要使用强制索引关键字(随着字段的增加索引可能会变或删除)

    查看全部
  • 数据字段维护:

    1、使用第三方工具维护(与数据库管理系统有关)

    2、利用数据库本身的备注字段来维护(增加COMMENT字段备注);

    http://img1.sycdn.imooc.com//602c884a0001683511520631.jpg

    查看全部
  • 反范式化:为了性能和读取效率考虑违反第三范式,允许存在少了数据冗余,以达到用空间换时间的目的。

    优点:

    1、减少表的关联数量;

    2、增加数据的读取效率;

    3、反范式化一定要适度。

    http://img1.sycdn.imooc.com//602c7ec400017b9612330652.jpg

    查看全部
  • 关于预留字段(预见性的避免修改数据库表机构,严禁使用):

    1、无法准确知道预留字段的类型;

    2、无法准确知道预留字段存储的内容;

    3、增加维护成本;

    4、严禁使用预留字段。

    查看全部
  • 避免使用触发器(before,after)

    1、降低数据导入的效率;

    2、可能出现意想不到的数据异常;

    3、使业务逻辑变复杂;

    查看全部
  • 外键:(保持数据完整性)避免使用外键约束

    1、降低数据导入效率;

    2、增加维护成本;

    3、相关联的列上一定要建立索引;

    查看全部
  • 主键选择:

    1、业务主键(标识业务数据进行表关联)和数据库主键(优化数据存储(隐含主键))

    2、主键最好顺序增长(比如:ID)

    3、主键的字段类型所占空间要尽可能小。

    查看全部
  • 时间类型:

    1、使用int:

    优点:字段长度比datetime小;

    缺点:使用不方便,需函数转换;

    (1)生日不常用的int;

    (2)下单时间、支付时间经常用的用datatime;

    限制:int4个字节,智能存储到2038-1-19- 11:14:07

    2、需要存储的颗粒度

    年(year类型一个字节)、月、日、时、分、秒、周

    查看全部

举报

0/150
提交
取消
课程须知
本课程适合程序开发人员及数据库管理运维人员
老师告诉你能学到什么?
1、了解数据库设计的重要性 2、如何设计出简洁高效的数据库结构 3、如何对数据库结构进行优化调整

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!