首页 > 数据库 >mysql中的的SQL优化

mysql中的的SQL优化

时间:2024-04-03 13:47:10浏览次数:28  
标签:插入 数据 SQL 第三页 索引 mysql 第一页 优化

 

 

 

Insert优化

要建立数据库,肯定避免不了很多数据一起插入进去,比如说有100万条数据,一下子插进去的话性能肯定会很差,而且很麻烦,而且吗,万一插入到一半系统宕机了就尴尬了,所以插入的优化可以采用事务的手段,即一起插入,一条失败就回滚的策略,这样只需要提交一次,会更加方便
不仅如此,还可以使用load的方式,直接将数据加载进去

主键优化

这里就不得不讲到一个插入机制,每个页里面,都会放着一定数量的数据

当第一页插满之后,就再重新开一页,继续插入数据,这是按顺序插入,那么问题来了,要是乱序插入怎么办,总不能直接放在后面吧

因为毕竟得按顺序,所以就会涉及到一个页分裂,比如插入一个50,50是在47的后面,那么47往前的一半的数据就复制到新开的第三页2里面,然后再把50放47后面去,那它们放到第三页不是乱了吗,没事,第三页指向第一页,第二页,指向第三页,直接用链表这个方法解决问题,比如说要删除数据,第一页删除了一半,然后第二页只有一半数据,那么两页各空出来一半,很浪费对吧,这时候就会涉及到一个页合并,就是第二页的那些会直接剪切到第一页来,这就是mysql强大的地方

但是啊一直用myqsl的这些页合并以及页分裂,就相当于一直叫MySQL做累活,性能肯定不高,所以啊,就要避免所谓的页分裂,所以还是尽量顺序插入

orderby 优化
使用orderby 优化的一个重要手段就是,给order的字段建立索引,这样就不用回表,加快性能,那么建立索引了就万事大吉了吗,不比如说,在MySQL,我们创建的索引默认是升序索引,这是什么意思呢,比如说,我们进行降序查询,那么就会造成一个反向查询,性能就会不好,所以,要么我们迎合默认索引,要么建立索引的时候,要做一个降序索引。,接着,也要记得遵循最左前缀法则

group by优化

标签:插入,数据,SQL,第三页,索引,mysql,第一页,优化
From: https://www.cnblogs.com/cjtaaa/p/18112493

相关文章

  • 【附源码】计算机毕业设计影评网站系统(java+springboot+mysql+mybatis+论文)
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义影评网站系统是一个专注于电影评论和评分的在线平台,旨在为观众提供一个交流观影体验、分享观点和发现新片的社区。随着电影产业的蓬勃发展,人们对于电影的需求和品......
  • 【附源码】计算机毕业设计智慧外贸平台(java+springboot+mysql+mybatis+论文)
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义智慧外贸平台是一种基于互联网技术的智能化外贸服务平台,旨在帮助外贸企业提高业务效率、降低成本、提升竞争力。随着全球化的不断深入和国际贸易竞争的加剧,传统的......
  • MySQL数据库报错:Can‘t create/write to file ‘/tmp/ibXXX‘ (Errcode: 13 - Permiss
    在进行MySQL数据库的安装和配置过程中,用户有时会遇到各种错误信息,这些错误可能会阻碍安装过程或初次运行。理解和解决这些错误对于确保数据库平稳运行至关重要。本文旨在探讨MySQL安装过程中可能出现的一个特定错误,提供关于该错误的详细信息、可能的原因及相应的解决方案。......
  • MySql分组查询 group by
    DDL 学生表 成绩表CREATETABLE`student`(`id`int(11)NOTNULLAUTO_INCREMENTCOMMENT'学号',`createDate`datetimeDEFAULTNULL,`userName`varchar(20)DEFAULTNULL,`pwd`varchar(36)DEFAULTNULL,`phone`varchar(11)DEFAULTNULL,`ag......
  • linux下mysql8.0更新密码报错解决方案(已知密码)
    先登录./mysql-uroot-p输入密码 然后更改密码直接执行ALTERUSER'root'@'localhost'IDENTIFIEDBY'密码';会失效会报:ERROR1396(HY000):OperationALTERUSERfailedfor'root'@'localhost'进行如下操作即可usemysql;updateuserset......
  • AI 图像分类在终端设备上的应用:轻量级模型与优化策略
    AI图像分类在终端设备上的应用:轻量级模型与优化策略在数字化和智能化日益深入的今天,AI图像分类技术已成为众多领域不可或缺的技术。无论是智能手机、自动驾驶汽车还是工业生产线上的质量检测,AI图像分类都扮演着重要角色。然而,在终端设备上实现高效、准确的图像分类并非易事,它......
  • 02 MySQL 介绍、安装、使用、配置
    概述MySQL是最流行的开源数据库服务器MySQL是一种数据库。数据库定义了存储信息的结构,在数据库中,存在着一些表。类似HTML表格,数据库表含有行、列以及单元。MySQL数据库通常是通过PHP来使用的,对PHP的支持最好MySQL所使用的SQL语言是用于访问数据库的最常用标......
  • 01 数据库和SQL语言概述
    概述数据库是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库;就是存储数据的仓库是一个以某种组织方式存储在磁盘上的数据的集合数据库的分类网络数据库网络数据库是指把数据库技术引入到计算机网络系统中,借助于网络技术将存储于数据库中的大量信息及时发......
  • 【阅读笔记】MySQL数据库存储类型选择
    摘自:《高性能MySQL》第四版原则更小的通常更好一般来说,尽量使用能够正确存储和表示数据的最小数据类型。更小的数据类型通常更快,因为它们占用的磁盘、内存和CPU缓存的空间更少,并且处理时需要的CPU周期也更少。简单为好简单数据类型的操作通常需要更少的CPU周期。例如,整型数......
  • MySQL的多层SP中Cursor的m_max_cursor_index相关BUG分析
    源码分析丨MySQL的多层SP中Cursor相关BUG一、问题发现在一次开发中在sp中使用多层cursor的时候想知道每层的m_max_cursor_index值分别是多少,以用来做后续开发。于是做了以下的试验,但是发现第一个level=2那层的m_max_cursor_index的值有点问题。注:本次使用的MySQL数据库版本为......