首页 > 数据库 >sql优化

sql优化

时间:2023-06-30 11:55:47浏览次数:36  
标签:插入 insert 行锁 tb 索引 sql 优化 id

  •  insert
    • insert批量插入
    • 手动提交事务
start transaction;
insert ···
insert ···
commit;
    • 主键顺序插入
    • 海量数据通过load插入

  • order by

  •  group by

  分组操作时,索引的使用也是满足最左前缀法则的

  • limit

一般分页查询时,通过创建覆盖索引能够比较好地提高性能,可以通过覆盖索引 + 子查询形式进行优化

explain select * from tb_sku t, (select id from tb_sku order by id limit 2000000, 10), a where t.id = a.id;

 

  • count

  •  update

更新条件尽量有索引

在MySQL的InnoDB引擎支持行锁,与Oracle不同,MySQL的行锁是通过索引加载的,如果对应的SQL语句没有走索引,则会全表扫描,行锁变为表锁。行锁又分为共享锁和排他锁,共享锁允许两个事务可以锁同一个索引,排它锁不允许。insert,delete,update在事务中都会默认加上排它锁。

 

标签:插入,insert,行锁,tb,索引,sql,优化,id
From: https://www.cnblogs.com/WTSRUVF/p/17516266.html

相关文章

  • SQL语句优化的30种方法
      1)对查询进行优化,应尽量避免全表扫描,首先应考虑在where及orderby涉及的列上建立索引。 2)应尽量避免在where子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 3)应尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描......
  • 一个sqlite的例子,将图片存入sqlite数据库
          最近学习sqlite,在看了一些资料后,写了一个例子,可能对初学sqlite或者学习将图片插入数据库等的有用,把源码发出来,给需要参考的。也欢迎大家提出建议。         包含常用的sql操作,增删改查,同时也在例子中说明,sqlit的sql语句使用参数,可以用@也可以用$。     ......
  • MySQL内存使用率高且不释放问题排查与总结
    一、内存使用率高且不释放问题排查生产环境MySQL5.7数据库告警内存使用率95%。排查MySQL内存占用问题的思路方法可以参考叶老师这篇文章:https://mp.weixin.qq.com/s/VneUUnprxzRGAyQNaKi-7g。TOP命令查看MySQL进程的RES指标,发现内存使用了10.6G,而数据库的innodb_buffer_pool_si......
  • springboot 配置mybatis打印sql
    方式一:###########################################################配置打印sql########################################################logging:level:com.threefivework.mymall.dao.mapper:DEBUG//包路径为mapper文件包路径方式二:在application.yml......
  • 清除SQL Server数据库日志(ldf文件)的几种方法
    随着系统运行时间的推移,数据库日志文件会变得越来越大,这时我们需要对日志文件进行备份或清理。  随着系统运行时间的推移,数据库日志文件会变得越来越大,这时我们需要对日志文件进行备份或清理。  解决方案1-直接删除本地ldf日志文件:(比较靠谱方案!)  1.......
  • MICROSOFT SQL SERVER TO POSTGRESQL MIGRATION USING PGLOADER
    Tocontinueourmigrationseries,today’spostwillfocusonpgloader.PgloaderisanotherOpenSourcedatamigrationutilityforPostgreSQLfromMySQLandSQLServer.Today’sdemowillmigrateasampledatabase(StackOverflow)fromMSSQ......
  • 界面组件DevExpress WPF v23.1新版亮点 - 启动和内存优化
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • MySQL-增删改语句
    数据库增删改语句原创 Lyle_Tu Linux分布式主任 2023-06-2622:28 发表于福建收录于合集#数据库7个#语句2个#sql5个#服务器15个 插入数据使用INSERT语句可向指定表中插入数据。INSERT语法的基本结构如下:INSERTINTO<table_name>(column_name1,column......
  • mysql-alter语句
    T-SQLAlter语句原创 Lyle_Tu Linux分布式主任 2023-06-2008:21 发表于福建收录于合集#sql5个#linux13个#数据库7个#服务器15个 ALTERTABLE语句用于在已有的表中添加、修改或删除列。 修改数据库常用语句语法格式:ALTERDATABASEdatabase_name{AD......
  • sql注入笔记(二)
    sql-labs篇union注入#Less-011.打开环境32.先查两个值看看?id=1?id=23.判断是否存在注入,使用一些符号进行判断,利用错误信息?id=2'发现报错,语法错误,“syntaxtousenear"2"LIMTatline1”,意思是在2附近有错误,也就是我们输入id=2'的时候与查询语句的闭合......