第一个表是商品表。包含商品id,商品名,品牌,商品型号,等等
第二个是商品信息表。字段包括商品id,属性英文名称,属性中文名称,属性值。
比如我有一个三星的电视
在第一个表里面写
id=1,商品名=三星电视,品牌=三星,商品型号=32XXXXX。。。。
第二个表里面写
id=1,属性英文名:LCDTYPE,属性中文名:液晶类型,属性值:LED
id=1,属性英文名:size,属性中文名:液晶尺寸,属性值:32
。。。。。。
《深入浅出MySQL数据库开发优化与管理维护第3版》百度网盘pdf最新全集下载:
链接:https://pan.baidu.com/s/1AxoktD-VngFdL1vsIBS_mw
?pwd=grx5 提取码:grx5简介:《深入浅出MySQL:数据库开发、优化与管理维护(第3版)》源自网易公司多位资深数据库专家数年的经验总结和MySQL数据库的使用心得,在之前版本的基础之上,基于MySQL 5.7版本进行了内容升级,同时也对MySQL 8.0的重要功能进行了介绍。除了对原有内容的更新之外,本书还新增了作者在高可用架构、数据库自动化运维,以及数据库中间件方面的实践和积累。
《深入浅出MySQL:数据库开发、优化与管理维护(第3版)》分为“基础篇”“开发篇”“优化篇”“管理维护篇”和“架构篇”5个部分,共32章。基础篇面向MySQL的初学者,介绍了MySQL的安装与配置、SQL基础、MySQL支持的数据类型、MySQL中的运算符、常用函数等内容。开发篇面向的是MySQL设计和开发人员,内容涵盖了表类型(存储引擎)的选择、选择合适的数据类型、字符集、索引的设计和使用、开发常用数据库对象、事务控制和锁定语句、SQL中的安全问题、SQL Mode及相关问题、MySQL分区等。优化篇针对的是开发人员和数据库管理人员,内容包括SQL优化、锁问题、优化MySQL Server、磁盘I/O问题、应用优化、PS/SYS数据库、故障诊断等内容。管理维护篇适合数据库管理员阅读,介绍了MySQL高级安装和升级、MySQL中的常用工具、MySQL日志、备份与恢复、MySQL权限与安全、MySQL监控、MySQL常见问题和应用技巧、自动化运维系统的开发等内容。架构篇主要面向高级数据库管理人员和数据库架构设计师,内容包括MySQL复制、高可用架构、MySQL中间件等内容。
1、优化设计的技巧
(1) 如果一个字段需要经常更改,则采用以空间换时间的设计方法
最常见的例子是用户积分登录次数的累加,按照范式设计,在users表中建立一个字段us_scores,以后需要在用户积分改变时采用update的语句进行修改。但是知道 update语句的执行速度是很慢的,为了避免大量重复使用它,优化的设计方案是建立us_scores表,存储每次增加的积分,在查询是采用SQL语句的sum方法来计算之。
(2) 关联字段类型尽可能定义为数字类型
(3) 表的序列字段必须是数字类型
(4) 若数据库有移植的可能性,不使用存储过程及触发器
(5) 建立恰当的索引
索引的建立是加快数据库查询的基本技巧之一,通常的建议是,只有百万级的记录的表格才应该建立索引。
,命名都应该作为非常重要的事情来看待,表、序列、字段、索引的命名技巧可以归结如下:
(1) 关联字段名称必须相同,名称以基础表的字段名称为准
(2) 序列名字跟表字段名字相同
(3) 关联表的名称应该是被关联的表用“_”连接起来组成的
(4) 字段定义的前两位是表名的缩写,第三位是下划线
一,保证规范,序列名称必须是唯一的,而且,一般的序列就是这个表的id字段。如果不加前缀,那么字段都叫做id就会违背惟一性原则。
第二,为了将来关联查询语句的书写方便。
(5) 索引的名字和表的名字相同
(6) 常用字段采用固定定义
为了提高大数据量的表格的查询速度,可以采用建立适当的索引方式。如果一个表只有一个索引,建议索引的名字跟表相同,如果有多个索引,则为表名称加下划线加索引列名称。
最安全的设计方案是,Web数据库和测试数据库分离。Web数据库权限只被管理员一个人掌握。
关于MySQL数据库设计
的优化措施还需要经过数据库设计人员的不断发掘,从数据库设计中不断的发现问题,提出解决问题的方法,才能将数据库的性能优化的更好更全面。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)