《数据库设计文档.docx》由会员分享,可在线阅读,更多相关《数据库设计文档.docx(8页珍藏版)》请在第壹文秘上搜索。
1、数据库设计文档应用系统:供应商:文件更改履历更新次数更新日期修订作者主要修订摘要.引言31.l编写目的31.2 术语表31.3 参考资料32 .数据库环境说明33 .数据库命名规范44 .数据模型设计55 .物理设计55.2 表汇总55.3 表XXX:XXX表(例如表S_USER:系统用户表)56 .视图设计66.2 视图汇总66.3 视图XXX:XXX信息(例如视图PROJEcT.MEMBER:项目成员关联信息)67 .存储过程设计68 .触发器设计69 .安全性设计79.2 防止用户直接操作数据库79.3 用户帐号密码加密79.4 用户与权限79.5 备份与容灾710 .性能优化811 .
2、数据库管理与维护81 .引言1.1 编写目的本文档是XX系统实现的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发,本文档遵循信息系统建设相关规范。本文档的读者对象是需求人员、系统设计人员、开发人员、测试人员。1.2 术语表本系统涉及的重要术语说明如下:序号术语或缩略语说明性定义1PMProjectManager,项目经理2DBADatabaseAdministrator,数据库管理员3Developer开发人员4Testers测试人员5元数据描述数据的数据,对数据及信息资源的描述性信息。1.3 参考资料在本系统数据库设计实现过程中涉及的
3、参考资料明细如下:资料名称作者文件编号、版本文件链接或存储位置需求说明书架构设计说明书XX数据库设计标准2 .数据库环境说明本系统数据库环境信息如下:数据库类型及版本数据库安装环境数据库设计工具数据库实例数据库名称说明Mysql5.8LinuxPowerDesigneradpED平台数据库3 .数据库命名规范本系统数据库命名规范约定如下。A.数据库、表、字段等所有名称的可用字符范围为:A-乙a-z,09和一下划线,除此外不允许使用其它字符作为名称。数据库及表名均不允许出现数字,字段名除非特殊情况不允许出现数字。B.数据库、表、字段等所有名称使用英文单词或英文短语或相应缩写,禁止使用汉语拼音,且
4、均使用单数名,例如:对存储客户信息的表命名为CUStOmer而不是CustomerSo名称应该清晰明了,能够准确表达事物的含义,遵循见名知意的原则。建议:OraCIe表、字段等名称统一使用大写,单词间用_下划线分隔;SQLSerVer数据库、表等名称采用Pascal命名法,字段名称采用骆驼式命名法,大小写字母混排;MySQL数据库、表、字段等名称统一使用小写,单词间用一下划线分隔。C.长度限制。关于各种数据库管理系统(DBMS,DatabaseManagementSystem)本身对表、字段等名称的长度限制如下:一一表;字段数据库表名字段名Mysql6464Oracle128128SqlSer
5、ver3030DB26464Access128128Infomix1818D.单词缩写。如果可以在字典里找到一个词的缩写,就用这个做为缩写,比如:Monday=MonDecember=DecC另外,可以删除单词元音(词首字母除外)和每个单词的重复字母来缩写一个单词。比如:Current=CrntAddress=AdrError=ErrAverage=Avg;E.表名加前缀。对于规模相对庞大、业务逻辑相对复杂的情况,要根据业务或功能对表格进行分类,给表名加前缀;如果要给表加前缀,则所有表均要有前缀,不要出现有些表有、有些没有的情况。(表前缀主要是为了区分不同功能的表,而非解释表的功能,表的功能由
6、表名来解释;表前缀应该越短越好,例如系统表:SJJSER、SJDPERATION_LOG,字典表:D_REGI0ND_TYPE,业务表:BJDRDER。)4 .数据模型设计为规范各业务系统数据建模过程,从源头保证数据质量,支操数据治理工作,本系统数据模型设计需遵循数据标准管理规范.docx,见附件,请严格按照规范走相关流程,设计出本系统数据模型。5 .物理设计本系统数据库表结构设计如下。5.1 表汇总表名功能说明表A表B表C5.2 表XXX:XXX表(例如表S_USER:系统用户表)表名主键索引字段序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明此表格的序号,
7、与数据库的序字段名称数据类型Y/NY/N高/中/低主键、外键,字段关匕是否自增,相关说明等号无关6 .视图设计本系统数据库视图设计如下:6.1 视图汇总表名视图说明视图A视图B视图C6.2 视图XXX:XXX信息(例如视图PrOjeCLmember:项目成员关联信息)视图名创建语句序号字段名称数据类型(精度范围)字段说明此表格的序号,与数据库的序号无关字段名称数据类型主键、外键,等字段含义,是否自增,相关说明7 .存储过程设计本系统数据库存储过程设计如下:序号名称输入参数及格式创建语句说明(功能及用法)8 .触发器设计本系统数据库触发器设计如下:序号名称输入参数及格式创建语句说明(功能及用法)
8、9 .安全性设计提高软件系统的安全性应当从“管理”和“设计”两方面着手。这里仅考虑数据库的安全性设计。9.1 防止用户直接操作数据库本章节描述:如何防止用户直接操作数据库,请简要描述相关措施示例:严格管控数据库账号及密码,确保不外泄,密码设置不可过于简单;只有本团队人员可操作数据库,其他团队或用户有数据需要,可提出申请并经团队长审批后,我方导出相关数据给对方。9.2 用户帐号密码加密对用户帐号的密码进行加密处理,确保在任何地方都不会出现密码的明文。例如,用户帐号采用MD5进行数据加密后再录入数据库,以满足任何地方密码的安全性要求。9.3 用户与权限确定每个用户对数据库表的操作权限,如创建、检索
9、、更新、删除等。每个用户拥有刚好能够完成任务的权限,不多也不少。用户可以访问的表与列操作权限例如:管理员admin所有表完全控制权限所有列增、删、改、查developerguest只读9.4 备份与容灾根据项目实际情况,选择合适的备份方式,建立有效的数据库容灾备份机制,确保系统安全稳定运行。本系统采取的数据库容灾备份方式如下:请描述本系统数据库容灾备份方式10 .性能优化分析并优化数据库的“时一空”效率,尽可能地提高处理速度,并且降低数据占用空间。具体的优化措施如下:优先级优化对象(目标)措施11 .数据库管理与维护本章节描述:本系统数据库日常管理和维护有什么机制,请简要描述示例:A.定期查看数据备份是否正常,备份机器磁盘空间是否够用;可保留最近三次的备份数据,删除以往备份的无用数据;B.定期对备份数据在测试机恢复还原,确保数据有效可用;C.确认数据库日志及备份日志的正常生成,以便于出现灾难时分析并查找原因;。.当系统运行一段时间,对数据量较大的表进行查询优化,提升系统访问体验。