广告
返回顶部
首页 > 资讯 > 数据库 >MySQL学习笔记(19):优化数据库对象
  • 165
分享到

MySQL学习笔记(19):优化数据库对象

MySQL学习笔记(19):优化数据库对象 2016-04-25 10:04:13 165人浏览 才女
摘要

本文更新于2019-08-18,使用Mysql 5.7,操作系统为Deepin 15.4。 目录优化表的数据类型通过拆分提高表的访问效率逆规范化使用中间表提高统计查询效率 一旦数据库对象设计完毕并投入使用,再进行修改就比较麻烦。

MySQL学习笔记(19):优化数据库对象

本文更新于2019-08-18,使用Mysql 5.7,操作系统为Deepin 15.4。

目录

  • 优化表的数据类型
  • 通过拆分提高表的访问效率
  • 逆规范化
  • 使用中间表提高统计查询效率

一旦数据库对象设计完毕并投入使用,再进行修改就比较麻烦。

优化表的数据类型

select_statement PROCEDURE ANALYSE([max_elements[, max_memory]])

对输出的每一列的数据类型提出优化建议,用户根据实际情况酌情考虑。参数的含义是:不要为超过max_elements个值或max_memory字节的ENUM类型提出建议。

通过拆分提高表的访问效率

  • 垂直拆分:把主键和一些列放到一个表中,把主键和另外的列放到另一个表中。
  • 水平拆分:根据一列或多列的值把数据行放到多个表中。水平拆分会给应用增加复杂度,通常在查询时需要多个表名。

逆规范化

常用的逆规范化技术有:

  • 增加冗余列:在多个表中有相同的列,用来在查询时避免连接操作。
  • 增加派生列:增加的列来自其他表中的数据经过计算而成,用来在查询时减少连接操作,避免使用聚合函数。
  • 重新组表:如果经常需要查看两个表连接出来的结果,则把这两个表重新组成一个表来避免连接。
  • 分割表:即垂直拆分和水平拆分。

逆规范化需要维护数据的完整性,常用的方法是:

  • 批处理维护
  • 应用逻辑
  • 触发器

使用中间表提高统计查询效率

  • 中间表复制源表部分数据,并且与源表隔离,在中间表上做统计查询不会对在线应用产生负面影响。
  • 中间表可以灵活添加索引或临时字段,从而提高统计查询的效率。
您可能感兴趣的文档:

--结束END--

本文标题: MySQL学习笔记(19):优化数据库对象

本文链接: https://www.lsjlt.com/news/7261.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL学习笔记(19):优化数据库对象
    本文更新于2019-08-18,使用MySQL 5.7,操作系统为Deepin 15.4。 目录优化表的数据类型通过拆分提高表的访问效率逆规范化使用中间表提高统计查询效率 一旦数据库对象设计完毕并投入使用,再进行修改就比较麻烦。 ...
    99+
    2016-04-25
    MySQL学习笔记(19):优化数据库对象
  • MySQL学习笔记(20):优化MySQL Server
    本文更新于2020-04-05,使用MySQL 5.7,操作系统为Deepin 15.4。 目录MySQL体系结构MySQL内存优化MyISAM内存优化key_buffer_size设置使用多索引缓存调整中点插入策略调整read_...
    99+
    2021-04-05
    MySQL学习笔记(20):优化MySQL Server
  • MySQL学习笔记(18):SQL优化
    本文更新于2019-08-18,使用MySQL 5.7,操作系统为Deepin 15.4。 目录优化SQL语句的步骤通过SHOW STATUS了解SQL语句的执行情况定位执行效率低下的SQL语句通过EXPLAIN或DESC分析SQ...
    99+
    2016-01-24
    MySQL学习笔记(18):SQL优化
  • MySQL学习笔记(22):应用优化
    本文更新于2020-04-05,使用MySQL 5.7,操作系统为Deepin 15.4。 目录使用连接池减少对MySQL的访问负载均衡其他优化措施 使用连接池 对于访问数据库来说,建立连接的代价比较昂贵。 减少对MySQL的访问...
    99+
    2020-02-02
    MySQL学习笔记(22):应用优化
  • PHP学习笔记:数据库优化与索引设计
    在开发Web应用程序时,数据库操作是一个非常关键的环节。数据库的性能直接影响着Web应用程序的响应速度和用户体验。为了提升数据库的效率和查询速度,我们需要进行数据库优化和索引设计。一、数据库优化数据库架构优化:正规化设计:遵循数据库范式,减...
    99+
    2023-10-21
    PHP 数据库优化 索引设计
  • MySQL学习笔记(21):优化磁盘IO
    本文更新于2020-04-05,使用MySQL 5.7,操作系统为Deepin 15.4。 目录使用符号连接分布IO禁止操作系统更新文件的atime属性用裸设备(Raw Device)存放InnoDB共享表空间调整IO调度算法使用...
    99+
    2017-05-19
    MySQL学习笔记(21):优化磁盘IO
  • Redis学习笔记(七) 数据库
    Redis 服务器将所有的数据库都保存在服务器状态redisServer结构的db数组中,db数组的每个项都是一个redisDB: struct redisServer{ //一个数组保存着服务器中的所有数据库 redi...
    99+
    2019-03-15
    Redis学习笔记(七) 数据库
  • mysql学习笔记(二)--- MySQL数据类型
    【正文】上一章节中,我们学习了MySQL软件的安装,既然软件都装好了,现在就正式开始MySQL的基础知识的学习吧,即使是零基础,也要一步一个脚印。恩,首先要学习的就是MySQL的数据类型。一、数据类型:1、...
    99+
    2022-10-18
  • MySQL学习笔记(4):数据类型
    本文更新于2019-06-19,使用MySQL 5.7,操作系统为Deepin 15.4。 目录数值类型整数类型定点数类型浮点数类型位类型日期时间类型字符串类型枚举类型集合类型 数值类型 整数类型 type[(m)] [UNSIG...
    99+
    2019-09-06
    MySQL学习笔记(4):数据类型
  • python学习笔记(三)—数据库篇
    一、数据库编程 数据库编程是指在应用程序中使用数据库管理系统(DBMS)进行数据存储、检索和处理的过程。数据库提供了一种结构化的方式来组织和存储数据,使得数据的管理更加高效和可靠。 1.1 关系数据库...
    99+
    2023-09-18
    python 学习 笔记
  • Oracle数据库高级学习笔记
    学习Oracle数据库高级知识点笔记 Oracle 数据库高级 Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。 优点...
    99+
    2014-08-24
    Oracle数据库高级学习笔记
  • 【MongoDB学习笔记23】MongoDB的索引对象和数组
    MongoDB允许深入文档内部,对嵌套字段和数组建立索引;嵌套对象和数组字段可以和复合索引中的顶级字段一起使用,多数情况下与“正常”索引字段的行为也是一致的。 一、索引嵌套文档例如,集合中的文档如...
    99+
    2022-10-18
  • MySQL处理重复数据的学习笔记
    MySQL 处理重复数据 有些 MySQL 数据表中可能存在重复的记录,有些情况我们允许重复数据的存在,但有时候我们也需要删除这些重复的数据。 本章节我们将为大家介绍如何防止数据表出现重复数据及如何删除数据表中的重复...
    99+
    2022-05-16
    MySQL 重复数据
  • Python API 学习笔记:如何优化实时数据流程?
    在现代数据处理中,实时数据处理变得越来越重要。无论是在线广告业务、金融交易还是物联网设备,实时数据处理都需要高效可靠的技术来支持。Python 提供了许多 API 来实现实时数据处理,本篇文章将介绍如何优化实时数据流程,使其更高效、更灵活...
    99+
    2023-11-08
    api 学习笔记 实时
  • SQL与数据库编程学习笔记-day2
    SQL与数据库编程学习笔记-day2 修改数据库密码; 首先打开在数据库bin目录下,打开cmd窗口;登入root用户。(用户名root,密码root); 登出数据库(修改数据库密码必须在数据库外执行命令);     ...
    99+
    2017-06-20
    SQL与数据库编程学习笔记-day2
  • 数据库原理及应用(学习笔记)
    数据库的静态结构设计:数据库的结构特性是静态的,一般不会轻易改变。数据库的行为结构设计:确定数据库用户的行为和动作,设计出数据库应用系统的系统层次结构,功能结构和数据流程图。用户的行为和动作的通俗理解就是对...
    99+
    2022-10-18
  • 学习笔记 12 数据库索引和锁
    索引是为了提高查询的效率。常见的索引模型有hash索引,有序数组,二叉树索引。hash索引:hash表是一种以键值对存储的数据结构,适用于等值查询场景;由于数据不是有序存储的,所以范围查询时效率比较差。有序...
    99+
    2022-10-18
  • oracle学习笔记----数据库导入导出
    一、导入和导出      Oracle的备份是oracle操作中常见的工作,常见的备份方案包括有:     ...
    99+
    2022-10-18
  • MySQL学习笔记-数据类型与操作数据表
    MySQL学习笔记-数据类型与操作数据表数据类型:  1.字符型  2.整型  3.浮点型  4.日期时间型数据表操作:  1.插入记录 ...
    99+
    2022-10-18
  • MySQL学习笔记 数据类型与操作数据表
    1.数据类型        【1】整型:数据类型存储范围字节TINYINT有符号型:-128~127(-2^7~2^7 -1),无符号型...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作