【MySQL】插入优化篇——(少量插入数据优化&批量插入数据load指令)

devtools/2024/10/22 14:42:40/

前言

大家好吖,欢迎来到 YY 滴MySQL系列 ,热烈欢迎! 本章主要内容面向接触过C++ Linux的老铁
主要内容含:
在这里插入图片描述

欢迎订阅 YY滴C++专栏!更多干货持续更新!以下是传送门!

  • YY的《C++》专栏
  • YY的《C++11》专栏
  • YY的《Linux》专栏
  • YY的《数据结构》专栏
  • YY的《C语言基础》专栏
  • YY的《初学者易错点》专栏
  • YY的《小小知识点》专栏
  • YY的《单片机期末速过》专栏
  • YY的《C++期末速过》专栏
  • YY的《单片机》专栏
  • YY的《STM32》专栏
  • YY的《数据库》专栏
  • YY的《数据库原理》专栏

目录

  • 一.插入数据优化
    • 1.批量插入
      • 【1】需要大批量插入数据——load指令
    • 2.手动提交事务
    • 3.主键顺序插入

一.插入数据优化

关于插入数据优化,主要有以下三个方面

  1. 批量插入
  2. 手动提交事务
  3. 主键顺序插入
    在这里插入图片描述

1.批量插入

  • 采取以下形式,在一个insert语句中完成数据插入,而不是分成几个insert语句
Insert into tb test values(1,'Tom'),(2,'cat'),(3, jerry');

【1】需要大批量插入数据——load指令

  • 如果一次性需要插入大批量数据,使用insert语句插入性能较低,此时可以使用MVSQL数据库提供的load指令进行插入。
  • 本地磁盘文件中的数据,通过load直接加载到数据库表结构中
  • 操作如下:在这里插入图片描述
#客户端连接服务端时,加上参数--local-infile
mysql --local-infile -u root -p#设置全局参数local infile为1,开启从本地加载文件导入数据的开关
set global local infile=1;#执行load指令将准备好的数据,加载到表结构中
#逗号分隔,换行符截止
load data local infile '/root/sql1.log’ into table 'tb user’ fields terminated by ',’ lines terminated by '\n' ;

2.手动提交事务

  • 而不是自动模式
  • 减少锁竞争:通过主动控制事务,你可以更精确地控制事务的开始和结束,从而减少不必要的锁竞争和锁等待时间。
  • 批量处理:对于大量的插入操作,将它们封装在一个事务中可以显著提高性能,因为数据库只需在事务结束时进行一次磁盘写入操作,而不是每次插入都写入。

3.主键顺序插入

  • 在大多数数据库系统中,如表数据是使用B树(或其变种如B+树)这样的数据结构进行索引的。
  • 顺序插入可以减少 页分裂 相应博客传送门

http://www.ppmy.cn/devtools/104138.html

相关文章

【Python系列】SQLAlchemy 基本介绍

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Hive SQL 练习

1、统计每天首次登录的人数 -- 统计每天首次登录的人数 -- 步骤:先找出第一次登录的时间,再按首次登录时间分组求人数-- 方法1: select first_login_time, count(user_id) as cnt from (select user_id, date_formate(min(login_ts), yyyy-…

自己开发完整项目一、登录注册功能-01

一、创建spingboot项目框架 1.首先创建一个空的项目作为父项目,之后的所有都在此基础上创建模块进行开发。 2.创建负责登录注册功能模块 二、启动项目 1.出现如下错误,代表着端口号被占用,这个时候,我们可以进行端口号的修改。 …

【网络安全】XML-RPC漏洞之盲SSRF

未经许可,不得转载。 文章目录 正文漏洞原理参考:【网络安全】XML-RPC PHP WordPress漏洞 正文 探索目标时,访问该链接:https://www.target.com/about-us/xmlrpc.php,页面如下: 修改GET为POST,并构造payload,以检查 XML RPC 服务器上启用了哪些方法: <methodCal…

【3.9】贪心算法-解最低加油次数

一、题目 汽车从起点出发驶向目的地&#xff0c;该目的地位于出发位置东面 target 英里处。 沿途有加油站&#xff0c;用数组 stations 表示。其中 stations[i] [positioni, fueli] 表示第 i 个加油站位于出发位置东面 positioni 英里处&#xff0c;并且有 fueli 升汽油。 假设…

Spring Cloud Consul 与 Eureka 对比:如何选择最佳服务发现工具

Spring Cloud Consul 与 Eureka 对比&#xff1a;如何选择最佳服务发现工具 服务发现是微服务架构中的核心组件之一&#xff0c;它允许服务之间在动态环境中彼此发现和通信。Spring Cloud 提供了多个服务发现工具&#xff0c;其中 Consul 和 Eureka 是最常用的两个。本文将深入…

Linux单用户模式和救援模式

Linux单用户模式和救援模式 init守护进程Linux系统启动级别init查看Linux启动级别init修改启动级别&#xff1a; systemd守护进程Linux系统启动级别systemd查看启动级别systemd修改启动级别 rescue单用户模式Initramfs模式进入Initramfs救援模式 修改被救援Linux的配置挂载boot…

零基础5分钟上手亚马逊云科技-NLP文字理解AI服务

简介&#xff1a; 欢迎来到小李哥全新亚马逊云科技AWS云计算知识学习系列&#xff0c;适用于任何无云计算或者亚马逊云科技技术背景的开发者&#xff0c;通过这篇文章大家零基础5分钟就能完全学会亚马逊云科技一个经典的服务开发架构方案。 我会每天介绍一个基于亚马逊云科技…