MySQL数据库开发实战:三十六军规
需积分: 9 113 浏览量
更新于2024-07-30
收藏 1.8MB PDF 举报
"本文主要介绍了MySQL数据库开发的三十六条军规,由石展分享,内容涵盖核心军规、字段类军规、索引类军规、SQL类军规和约定类军规,旨在提供数据库开发的最佳实践,避免不必要的错误和性能问题。"
一、核心军规
1. 尽量不在数据库做运算:数据库应专注于存储和检索数据,复杂的运算应移到应用程序中处理,以减轻数据库服务器的压力,提高系统整体性能。
2. 控制单表数据量:合理规划单表数据量,如纯INT字段不超过1000万行,含CHAR字段不超过500万行,必要时进行分表操作,以避免单表过大导致的性能问题。
3. 保持表身段苗条:减少表字段数量,提高I/O效率、全表扫描速度、表修复速度以及ALTER TABLE操作的效率。一般建议单表字段数控制在20至50个之间。
4. 平衡范式与冗余:在设计数据库时,应根据实际需求平衡范式和冗余,考虑性能与数据一致性,适当情况下可牺牲部分范式以提高效率,但可能会增加代码复杂性。
5. 拒绝3B:避免使用大SQL、大事务和大批量操作,这些操作可能导致数据库性能急剧下降,增加系统的复杂性和不可预测性。
二、字段类军规
1. 用好数值字段类型:选择合适的数值类型,如TINYINT、SMALLINT、INT、BIGINT、FLOAT、DOUBLE和DECIMAL等,避免不必要的空间浪费和性能损失,如INT(1)与INT(11)的区别。
2. 将字符转化为数字:尽可能使用数字类型而非字符串类型作为索引,以提高查询速度和减少存储空间。
三、索引类军规(部分内容未给出)
这部分可能包括如何有效地创建和使用索引,以及避免无效或重复的索引,以优化查询性能。
四、SQL类军规(部分内容未给出)
这部分可能涉及SQL语句的编写规范,如避免全表扫描,使用JOIN操作的注意事项,以及如何写出高效的查询语句。
五、约定类军规(部分内容未给出)
这部分可能包含团队协作中的数据库设计规范,如命名约定、文档编写和版本控制等,以确保代码的可维护性和一致性。
总结,这些军规旨在帮助数据库开发者避免常见的错误,提高数据库性能,并确保系统稳定性和可扩展性。遵循这些最佳实践,可以在项目开发早期就预防潜在的问题,降低后期维护成本。
2018-02-28 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
holy_yezi
- 粉丝: 29
- 资源: 136
最新资源
- CtfGit:Pagina Del Curso de Programacion
- 340-project-3
- 资产服务器2
- Accuinsight-1.0.34-py2.py3-none-any.whl.zip
- Motion-Detector-with-OpenCV:Python OpenCV项目
- ProcessX:使用C#8.0中的异步流来简化对外部进程的调用
- BELabCodes:这些是我在 BE 期间作为实验室实验编写的代码集合
- screwdriver:Dart包,旨在提供有用的扩展和辅助功能,以简化和加速开发
- cliffordlab.github.io:实验室网站
- 每日报告
- Meter:与MetricKit进行交互的库
- nova-api:新资料库
- marketplace_stat:虚幻市场统计可视化工具
- Blanchard__课程
- 2P_cellAttached_pipeline:2P单元贴记录管道
- kalkulator