暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片
MySQL开发规范.pdf
227
7页
7次
2023-05-24
5墨值下载
一、数据库对象命令规范
1.1
库命名规
命名使用具有意义的英文词汇,词汇中间以下划线分
【强制】数据库名不能超过 32 个字符
【强制】库的名称格式:业务系统名称_子系统名
【强制】数据库名只能使用英文字母、数字、下划线
【强制】数据库禁止使用 MySQL 保留字
【强制】所有数据库对象都使用小写字母
1.2 表命名规
【强制】表名不能超过 32 个字符
【强制】命名全部使用小写,并且只能使用英文字母、数字、下划线
【强制】建表必须有 comment
【建议】同一模块使用的表名尽量使用统一前缀
【建议】普通表名以 t_开头,表示为 table,命名规则为 t_模块名(或有意义的简写)
【强制】临时表(如数据采集的中间表)以 tmp_开头,加上 8 位时间后缀(tmp_tb_20220419)
【强制】备份表(如历史数据中间表)以 bak_开头,加上 8 位时间后缀(bak_tb_20220419)
1.3 字段命名规范
【强制】字段名不能超过 32 个字符
【强制】各表之间相同意义的字段必须同名
【强制】字段名称一律小写
【建议】布尔值字段:命名以“is_”前缀+字段描述。如 is_enabled
【建议】序号列字段:以 id 后缀,如:user_id 表示用户编号
【强制】字段名称之间用下划线连接
1.4 索引与约束规范
【强制】普通索引按照“idx_字段名称”进行命名。例如 idx_age_name
【强制】唯一索引按照“uniq_字段名称”进行命名。例如 uniq_age_name
【强制】组合索引建议包含所有字段名,过长字段采用缩写形式。例如 idx_age_name_add
【强制】命名一律小写
【强制】非空约束:如无特殊需要,建议所有字段默认非空,不同数据类型必须给出默认值
二、数据库对象设计规范
2.1 行为规范
【强制】表结构变更必须通知 DBA 进行审核。
【高危】禁止应用程序账号使用 DDL、DCL 权限。
【强制】不要在 MySQL 数据库存放业务逻辑。
【强制】禁止在线上做数据库压力测试。
【强制】禁止从测试、开发环境直连生产数据库。
【高危】禁止开发人员拷贝生产数据到测试环境。
2.2
基础规范
【强制】使用 InnoDB 存储引擎,必要时可申请其他引擎,但禁止使用 MyISAM。
【强制】库字符集统一使用 utf8mb4,字符编码默认,建表时禁止指定字符集、字符编码。
【强制】所有表都需要添加注释(除主键外),推荐采用英文标点,避免出现乱码。
【强制】禁止在数据库中存储图片、文件等大数据。
【强制】禁用 procedure、function、trigger、views、event、外键约束。因为他们消耗数据库资源,降低数据库实例可扩展性
【强制】线上生产环境单个 SQL 执行时长不超过 10 秒,统计库时长不超过 600
2.3 数据库容量控制
【强制】控制单个库数据量在 200G 以内
【强制】控制单个实例数据量在 1T 以内
【建议】控制单库表个数 2000 以内
of 7
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。