MySQL开发规范

开发规范–MySQL 摘要 这篇文章旨在规范开发人员对线上、线下MySQL数据库的操作行为, 包括表设计、索引使用和sql查询三个方面。一为避免字符集、索引等的滥用给后端的迁移和排错带来难度; 二为减少sql的不合理使用给后端带来额外的性能消耗和调优的复杂性; 三为尽量剥离后端服务与开发人员的耦合度, 方便后端的扩展、迁移和故障处理。规范相关条目随版本的不同略有变化, 部分规范随开发人员的使用而进行调整。 管理规范见: http://zhechen.me/mysql%e7%ae%a1%e7%90%86%e4%ba%8b%e9%a1%b9%e8%a7%84%e8%8c%83/ 参考 http://dev.mysql.com/doc/refman/5.5/en/optimization.html http://dev.mysql.com/doc/refman/5.5/en/data-types.html http://dev.mysql.com/doc/refman/5.5/en/replication.html 表设计 原则上讲表设计是一个很大的话题, 字段及类型的选取、字符集、存储引擎、范式、是否拆分表等都需要做更细致的划分以避免以后可能会引起的隐含问题。当然没有产品DBA参与项目的开发设计, 很多表设计及创建工作都由开发人员来完成, 这也造成了开发人员更多的以个人喜好来完成表设计相关的工作, 对后期的扩展及维护并没有做太多的考虑。 所以这里从后端维护的角度以存储引擎、数据类型、和表创建三个方面来描述开发阶段需要遵守的一些规范。

Continue reading

MongoDB使用及规范介绍

安装部署说明 1. 软件获取 不做源码编译, 采用二进制格式安装(解压即可用)。软件可从官方下载 http://www.mongodb.org/downloads 2. 安装条件 主机环境应该为RAID10级别,如果硬盘不够可降级为RAID1或RAID5级别(RAID0不安全)。 RAID卡型号选取带有Cache功能的卡,如DELL的H700或H710P。 资源限制: 对应启动文件的参数, ulimit -n 值需大于 最大连接数+mongodb数据文件数, 暂定ulimit -n 16384 3. 安装方式

Continue reading