首页 > 数据库 >MySql 性能优化

MySql 性能优化

时间:2024-09-10 23:54:34浏览次数:14  
标签:数据 -- local 性能 infile 插入 MySql 优化 主键

        MySql性能优化

use exercise_linux;
-- 优化其他Sql语句

-- insert优化
-- 1.批量插入
-- 在insert插入时,尽量批量插入,因为每次插入都需要和数据库建立连接,十分影响效率
-- 但插入多条数据也不建议过多,一般为500 - 1000;若有大量数据需要插入,那么应该将其拆分为一堆少量的数据再插入

-- 2.手动提交事务
-- 若自动提交事务,则会面临频繁的事务开启和事务提交,影响效率;可以等一些Sql语句执行完毕之后,再一次性提交事务

-- 3.主键顺序插入
-- 主键顺序插入的效率高于主键乱序插入的效率

-- 4.大批量插入数据
-- 若需要一次性插入大批量数据,使用insert语句插入效率较低,可以使用load指令插入
-- 步骤:
-- 1.在客户端链接服务端时,加上参数 --local-infile
-- mysql --local-infile -u root -p
-- 2.开启从本地加载文件导入数据库的开关
-- set global local_infile = 1
-- 3.执行load指令将准备好的数据加载到表结构中
-- load data local infile 'file_name' into tbale 'table_name' fields terminated by '分割符' lines terminated by '换行符'

-- 数据组织方式
-- 在innoDB存储引擎中,表数据都是根据主键顺序存放的,这种存储方式的表是索引组织表



-- 页合并:
-- 当删除一行记录时,实际上记录并没有被物理删除,只是该记录被标记为删除;而且它的空间变得允许被其他记录声明使用
-- 当页中删除的记录达到MERGE_THRESHOLD(默认为页的50%),innoDB引擎会开始寻找最靠近的页(前或后)看看是否可以将两个页合并,以优化空间使用



-- 主键的设计原则
-- 满足业务需求的情况下,尽量降低主键的长度
-- 插入数据时,尽量选择顺序插入,选择AUTO_INCREMENT自增主键
-- 尽量避免以UUID做主键或其他自然主键,如身份证号
-- 业务操作时,避免对主键修改,因为修改主键要修改索引结构,代价极大


标签:数据,--,local,性能,infile,插入,MySql,优化,主键
From: https://blog.csdn.net/Aishangyuwen/article/details/142112004

相关文章

  • mysql 8.0数据类型 json
    mysql8.0新增数据类型json。5.7通过blob等类型来保存json格式的数据,为什么还要专门增加这一数据格式的支持呢?  1.保证了JSON数据类型的强校验:JSON数据列会自动校验存入此列的内容是否符合JSON格式,    非正常格式则报错,而varchar类型和text等类型本身是不存在这......
  • MySQL数据类型
    MySQL支持SQL数据类型的几个类别:数字类型、日期和时间类型、字符串(字符和字节)类型、空间类型和JSON数据类型。==========================================数据类型 ==========================================MySQL支持所有标准的SQL数值数据类型。这些类型包括精确的数值......
  • JMeter性能测试快速入门
    1.安装JmeterJmeter依赖于JDK,所以必须确保当前计算机上已经安装了JDK,并且配置了环境变量。1.1.下载可以ApacheJmeter官网下载,地址:http://jmeter.apache.org/download_jmeter.cgi 1.2.解压因为下载的是zip包,解压缩即可使用,目录结构如下:其中的bin目录就是执行的脚本,其中......
  • MySQL 查询优化秘籍:让你的数据库查询飞起来
    在数据库应用中,高效的查询性能至关重要。MySQL作为广泛使用的关系型数据库,掌握一些常用的查询优化方法可以极大地提升系统的响应速度和性能。今天,我们就来一起探讨常用的优化MySQL查询方法及示例。一、索引优化索引就像是数据库的导航地图,能够快速定位数据。选择合适的索引......
  • 在Vue 3中优化异步数据加载:利用`onMounted`与`Promise.all`
    在Vue3中优化异步数据加载:利用onMounted与Promise.all在构建现代Web应用时,异步数据加载是不可或缺的一部分。Vue3的CompositionAPI通过提供onMounted生命周期钩子和Promise.all方法,为我们提供了一种高效且优雅的方式来处理这种需求。本文将深入探讨如何在Vue3中利用这......
  • mysql实用系列:mysql如何拼接字符串?
    在MySQL中,拼接字符串可以使用CONCAT()函数,或者使用+操作符。以下是一些基本的使用示例:使用CONCAT()函数:SELECTCONCAT('Hello','','World');--输出:HelloWorld使用+操作符:SELECT'Hello'+''+'World';--输出:HelloWorld拼接多个字符串:SEL......
  • MySQL 中的 JOIN 操作:连接数据的强大工具
    在MySQL数据库的使用中,JOIN操作是一个非常重要且强大的功能,它允许我们从多个表中检索数据,从而实现更复杂的查询和数据分析。今天,我们就来深入了解一下MySQL中的JOIN操作。一、为什么需要JOIN操作?在实际的数据库应用中,数据通常被分散存储在多个表中。例如,一个电商系统可......
  • MySQL分库分表
    一、概念分库:指将数据按照一定的规则拆分到多个数据库中,每个数据库存储一部分数据。通过分库可以提升数据库的存储能力和扩展性。分表:指将一张大表按照一定的规则拆分成多个小表,每个小表存储原表的一部分数据。通过分表可以提升查询性能,因为每个小表的数据量较少,查询速度......
  • Vue 3 性能优化技巧:让你的应用飞起来!
    Vue3性能优化技巧:让你的应用飞起来!大家好!今天我想跟大家分享一些关于Vue3性能优化的实用技巧。Vue3带来了很多新的特性和改进,但只有了解并应用这些优化技巧,我们才能真正发挥它们的优势,打造更高效的应用。接下来,我将深入探讨一些有效的性能优化策略,希望对你有所帮助!引......
  • 微信公众号服务号消息被折叠隐藏后,公众号排名优化应该注册什么类型账号?
    在当今数字化信息飞速传播的时代,微信公众号服务号消息折叠这一更新引发了广泛的关注和讨论。其中,一个关键的问题便是:在这样的背景下,公众号排名优化注册什么类型账号好?公众号排名优化,就目前的情况而言,确实呈现出一种引人瞩目的态势。许多有远见卓识的人很早就敏锐地洞察到了这......