MySQL开发实战:三十六条军规详解
需积分: 9 100 浏览量
更新于2024-07-23
收藏 1.8MB PDF 举报
“MySQL数据库开发的三十六条军规_石展_完整_Qcon”
在MySQL数据库开发中,遵循一定的军规可以有效地提升系统性能、保证数据安全以及优化开发流程。以下是根据提供的信息提炼出的一些关键知识点:
1. **避免在数据库中进行运算**
- 数据库的主要任务是存储和检索数据,而不是进行复杂的计算。应尽量将运算移到应用程序端,利用CPU进行处理,以减少数据库的压力,提高查询效率。
2. **控制单表数据量**
- 预估一年内单表数据量,避免超过一定规模,例如纯INT字段不超过1000万,含CHAR字段不超过500万。当数据量过大时,考虑分表策略,如按USERID、DATE、AREA等进行分区。
3. **保持表结构简洁**
- 表设计时,字段数量应尽量精简,以提高IO效率,便于全表扫描,加快表修复速度,简化开发,并减少ALTER TABLE操作的时间。一般建议单表字段数在20-50个之间,单行大小不超过200字节,纯INT字段不超过50个,CHAR(10)字段不超过20个。
4. **平衡范式与冗余**
- 在设计数据库时,需要权衡规范化和性能。过于严格的范式可能导致查询效率下降,而在适当情况下引入冗余可以提高性能,但可能增加维护复杂度。
5. **拒绝3B原则**
- 大SQL(BIGSQL)、大事务(BIGTransaction)和大批量(BIGBatch)操作会导致数据库性能急剧下降。应避免这些操作,尤其是对于快速增长的数据,应采取分批处理或优化SQL语句来减轻数据库压力。
6. **选择合适的数值字段类型**
- 使用正确的数值类型非常重要,如TINYINT、SMALLINT、INT、BIGINT等。注意区分INT(1)和INT(11),以及合理使用BIGINT AUTO_INCREMENT和DECIMAL(M,D)。
7. **利用数值索引提高效率**
- 对于适合的场景,将字符串类型转换为数字类型,如使用整数索引代替字符串索引,可以提升查询速度并减少存储空间。
以上是MySQL数据库开发的部分军规,它们旨在指导开发者做出更加高效和稳定的数据库设计方案,避免因设计不当导致的问题。遵循这些规则,可以帮助开发者在项目初期就避免潜在的性能瓶颈和后期维护难题。
2019-10-16 上传
2024-09-16 上传
2024-09-16 上传
林轩宇
- 粉丝: 0
- 资源: 1
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展