Mysq的使用教程 开发规范.doc
《Mysq的使用教程 开发规范.doc》由会员分享,可在线阅读,更多相关《Mysq的使用教程 开发规范.doc(6页珍藏版)》请在文库网上搜索。
1、MySQL开发规范说明:数据库本身功能点很多,硬性限制上限比较高,比如单表大小,记录条数,多表join关联个数。我们人为的加一些规范予以限制,是基于当前的并发度、响应时长、网络速度、硬件资源、备份时长、是否易于维护管理、便捷扩容、兼顾敏捷开发等诸多因素做的一个平衡选择。比如索引个数限制(考虑记录更新需要更新索引,而这又涉及到单次数TPS带来的多次IOPS,影响磁盘使用率,磁盘满符合使用增加了吞吐量但又带来排队深度增加,总响应时长增长。命名规范库名、表名、字段名必须使用小写字母,并采用下划线分割库名、表名、字段名禁止超过32个字符。命名应与意义相符:比如k1,k2,k3这种无意义字段应该避免。受
2、限一下操作系统限制,库名尽量少于8个字符。以便跨数据库版本迁移,比如mysql迁移db2,oracle等库名、表名、字段名禁止使用MySQL保留字比如:字段常见 value 等关键字出现临时库、表名必须以tmp为前缀,并以日期为后缀,比如:tmp_order_yyyymmdd备份库、表必须以bak为前缀,并以日期为后缀 ,比如:t_order_bak_yyyymmdd基础规范使用INNODB存储引擎说明:mysql 官方版本已经设置表字符集使用UTF8,建议使用utf8mb4所有表都需要添加注释说明:增强可维护性,以及数据仓库、大数据项目等二次采集时数据调研的容易程度单表数据量建议控制在500
3、0W以内说明:受限部署机器的内存,迁移数据的网络限制,对低端硬件设备(1000iops);表应设置在1000w以内不在数据库中存储图片、文件等大数据说明:核心库考虑高并发,高性能,以及有效使用内存等原因,大字段不具备内存缓存,以及插入数据时,删除数据导致聚簇索引行迁移。禁止在线上做数据库压力测试禁止从测试、开发环境直连数据库说明:考虑实际阶段调整,直联容易出现,误修改数据,update不提交hold住事务,锁等待,以及核心数据丢书;物理上也开放端口给入侵留了安全隐患;以及员工变更的用户敏感数据外泄。库表设计拆分大字段和访问频率低的字段,分离冷热数据按日期时间分表需符合YYYYMMDDHH格式采
4、用合适的分库分表策略。比如:用户维度,商户代理商维度,具体取决于服务对象是用户还是多种聚合字段设计尽可能不使用TEXT、BLOB类型用DECIMAL代替FLOAT和DOUBLE存储精确浮点数将字符转化为数字使用TINYINT来代替ENUM类型所有索引字段均定义为NOT NULL使用UNSIGNED存储非负整数INT类型固定占用4字节存储使用timestamp存储时间使用INT UNSIGNED存储IPV4使用VARBINARY存储大小写敏感的变长字符串禁止在数据库中存储明文密码,身份证号,卡号 等(数据安全角度考虑)索引规范索引的用途说明:快速查询、去重、加速定位、避免排序;评价索引又按三星来
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Mysq的使用教程 开发规范 Mysq 使用 教程 开发 规范