mysql数据库优化 数据库结构优化

数据结构优化

一、选择格式的数据类型

数据类型的选择,重点在于合适二字,如何确定选择的数据类型是否合适?
1、使用可以存下你的数据的最小的数据类型。
2、使用简单的数据类型,Int要比varchar类型在mysql处理上简单;
3、尽可能的使用not null定义字段;
4、尽量少使用text类型,非用不可时最好考虑分表。
//使用int类型存储时间类型
from_unixtime(),unix_timestamp()时间戳转换
//使用bigint存储ip地址
inet_aton(‘192.168.132.1‘),inet_nton()

二、表的范式化优化,反范式化优化

三、表的垂直拆分:
所谓垂直拆分,就是把原来一个有很多列的表拆分成多个表,这解决了表的宽度问题;
拆分的原则:
1、将不常用的字段单独放在一个表中。
2、将大字段单独放在一个表中。
3.将经常一起使用的字段放在一起。

四、表的水平拆分
表的水平拆分是为了解决单表的数据量过大的问题,水平拆分的表结构是一致的。

时间: 2024-11-03 21:09:57

mysql数据库优化 数据库结构优化的相关文章

【FPGA】【代码】资源优化,结构优化

资源优化 原始资源 定义时初始化和复位电路初始化都起作用,删除定义的初值后 将always块描述的组合逻辑变为时序逻辑后

小蚂蚁学习mysql性能优化(7)--数据库结构优化--选择合适的数据类型

关于SQL以及索引优化的部分终于学习完了,今天开始进入第二层次的学习,数据库的结构优化,第一部分,选择合适的数据类型. 数据类型的选择,重点在于合适二字. 1.    使用可以存下数据的最小的数据类型 比如,一个时间类型的一个数据,可以使用varchar,可以使用datetime,还可以使用int,如何选择,就看哪一种类型对我们来说是最小的,不言而喻,int类型相对来说是最小的数据类型. 2.    使用简单的数据类型. int类型要比varchar类型在mysql处理上简单的多,用int类型来

mysql性能优化学习笔记(5)数据库结构优化

一.选择合适的数据类型    1.使用可存下数据的最小的数据类型    2.使用简单地数据类型,Int<varchar    3.尽可能使用not null定义字段    4.尽量少用text,非用不可最好分表    用Int存储日期时间    from_unixtime()可将Int类型的时间戳转换为时间格式    unix_timestamp()可将时间格式转换为Int类型    存储IP地址——bigInt    利用inet_aton(),inet_ntoa()转换 二.范式设计   

《打造扛得住的MySQL数据库架构》第4章 MySQL数据库结构优化

4-1 数据库结构优化介绍 良好的数据库逻辑设计和物理设计是数据库获得高性能的基础. 1.减少不必要的数据冗余. 2.尽量避免数据维护中出现更新,插入和删除异常. 插入异常:如果表中的某个实体随着另一个实体而存在.   更新异常:如果更改表中的某个实体的单独属性时,需要对多行进行更新. 删除异常:如果删除表中的某一实体则会导致其他实体的消失. 3.节约数据存储空间 4.提高查询效率 show create table selectcourse\G select * from selectcour

Mysql性能优化----SQL语句优化、索引优化、数据库结构优化、系统配置优化、服务器硬件优化

一.SQL语句优化 1-1.MySQL慢日志 1).慢日志开启方式和存储格式 如何发现有问题的SQL? 使用Mysql慢日志对有效率问题的SQL进行监控 前期准备 mysql> show variables like '%log_queri%'; +-------------------------------+-------+ | Variable_name | Value | +-------------------------------+-------+ | log_queries_no

MySql学习(六) —— 数据库优化理论(二) —— 查询优化技术

逻辑查询优化包括的技术 1)子查询优化  2)视图重写  3)等价谓词重写  4)条件简化  5)外连接消除  6)嵌套连接消除  7)连接消除  8)语义优化 9)非SPJ优化 一.子查询优化 1. 什么是子查询:当一个查询是另一个查询的子部分时,称之为子查询. 2. 查询的子部分,包含的情况: a) 目标列位置:子查询如果位于目标列,则只能是标量子查询,否则数据库可能返回类似“错误:子查询只能返回一个字段 ( [Err] 1242 - Subquery returns more than 1

mysql基础和数据库的优化

Mysql基础... 4 Mysql介绍... 4 登录mysql mysql –u root –p[掌握]... 4 SQL语言... 4 DCL. 4 grant. 4 revoke. 4 DDL. 4 建库... 4 删库... 4 建表... 4 看表结构... 5 删表... 5 修改表... 5 DML[重点]... 5 增加... 5 删除... 5 修改... 5 查看... 5 排序... 5 总数... 5 求和... 5 平均... 6 最大... 6 最小... 6 表连

MYSQL学习笔记——数据库范式及MYSQL优化整体思路

一.数据库范式                                                                               为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 1.1.第一范式(1NF:每一列不可包含多个值)      所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列

高性能可扩展MySQL数据库设计及架构优化 电商项目

第1章 数据库开发规范的制定    俗话说:"没有规矩不成方圆".这一章,我们就先来制定数据库开发的各种规范,包括:数据库命名规范.数据库基本设计规范.数据库索引设计规范.数据库字段设计规范.SQL开发规范以及数据库操作规范.通过这些规范的制定可以指导并规范我们后续的开发工作,为我们以后的工作提供一个良好的基础.... 第2章 电商实例数据库结构设计    数据库开发规范的基础之上,如何更好的利用规范设计出易于维护和伸缩性良好的数据库结构,是我们的学习目的.这一章我们根据常用电商项目需

MySQL 数据库性能优化之SQL优化

前言 有人反馈之前几篇文章过于理论缺少实际操作细节,这篇文章就多一些可操作性的内容吧. 注:这篇文章是以 MySQL 为背景,很多内容同时适用于其他关系型数据库,需要有一些索引知识为基础. 优化目标 1.减少 IO 次数 IO永远是数据库最容易瓶颈的地方,这是由数据库的职责所决定的,大部分数据库操作中超过90%的时间都是 IO 操作所占用的,减少 IO 次数是 SQL 优化中需要第一优先考虑,当然,也是收效最明显的优化手段. 2.降低 CPU 计算 除了 IO 瓶颈之外,SQL优化中需要考虑的就