
mysql
文章平均质量分 82
wx: fulltilt8
这个作者很懒,什么都没留下…
展开
-
MySQL索引详解(优缺点,何时需要/不需要创建索引,索引及sql语句的优化)
一、什么是索引? 索引是对数据库表中的一列或多列值进行排序的一种结构,使用索引可以快速访问数据库表中的特定信息。二、索引的作用? 索引相当于图书上的目录,可以根据目录上的页码快速找到所需的内容,提高性能(查询速度)三、优点:通过创建唯一性索引,可以保证数据库表中的每一行数据的唯一性。 可以加快数据的检索速度 可以加速表与表之间的连接 在使用分组和排序进行检索的时候,可以减少查询中分组和排序的时间四、缺点创建索引和维护索引要耗费时间,这种时间随着数据量的增...转载 2021-09-11 04:55:22 · 373 阅读 · 0 评论 -
mysql 锁与MVCC的原理
锁Q:为什么要用锁?1、操作金额、红包、用户余额、订单状态的时候2、判断一条记录存不存在,不存在的话执行操作3、减商品库存的时候(并发大的时候,很容变负数)myisam 表锁innodb 行锁共享锁(S锁):假设事务T1对数据A加上共享锁,那么事务T2可以读数据A,不能修改数据A。select * from table where id = ? lock in share mode排他锁(X锁):假设事务T1对数据A加上共享锁,那么事务T2不能读数据A,不能修改数据A...转载 2021-09-09 04:47:22 · 266 阅读 · 0 评论 -
MySQL索引-B+树(看完你就明白了)
索引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在 [1,2,3,4] 中找到 4 这个数据,直接对全数据检索也很快,没有必要费力气建索引再去查找。索引在 MySQL 数据库中分三类:B+ 树索引 Hash 索引 全文索引我们今天要介绍的是工作开发中最常接触到的 InnoDB 存储引擎中的 B+ 树索引。要介绍 B+ 树索引,就不得不提二叉查找树,平衡二叉树和 B 树这三...转载 2021-09-07 03:19:21 · 308 阅读 · 0 评论 -
MySQL中的聚簇索引、非聚簇索引、联合索引和唯一索引
一、索引类型索引根据底层实现可分为B-Tree索引和哈希索引,大部分时候我们使用的都是B-Tree索引,因为它良好的性能和特性更适合于构建高并发系统。根据索引的存储方式来划分,索引可以分为聚簇索引和非聚簇索引。聚簇索引的特点是叶子节点包含了完整的记录行,而非聚簇索引的叶子节点只有所以字段和主键ID。根据聚簇索引和非聚簇索引还能继续下分还能分为普通索引、覆盖索引、唯一索引以及联合索引等。二、聚簇索引和非聚簇索引聚簇索引也叫聚集索引,它实际上并不是一种单独的索引类型,而是一种数据...原创 2021-09-07 02:40:32 · 1902 阅读 · 1 评论 -
mysql执行计划
# mysql执行计划 在企业的应用场景中,为了知道优化SQL语句的执行,需要查看SQL语句的具体执行过程,以加快SQL语句的执行效率。 可以使用explain+SQL语句来模拟优化器执行SQL查询语句,从而知道mysql是如何处理sql语句的。 官网地址: https://dev.mysql.com/doc/refman/5.5/en/explain-output.html### 1、执行计划中包含的信息| Column | ...原创 2021-07-27 15:53:12 · 68 阅读 · 0 评论 -
关于mysql数据库为什么会锁表
在联机事务处理(OLTP)的数据库应用系统中,多用户、多任务的并发性是系统最重要的技术指标之一。为了提高并发性,目前大部分RDBMS都采用加锁技术。然而由于现实环境的复杂性,使用加锁技术又不可避免地产生了死锁问题。因此如何合理有效地使用加锁技术,最小化死锁是开发联机事务处理系统的关键。死锁产生的原因在联机事务处理系统中,造成死机主要有两方面原因。一方面,由于多用户、多任务的并发性和事务的完整性要求,当多个事务处理对多个资源同时访问时,若双方已锁定一部...原创 2021-07-21 16:38:32 · 1653 阅读 · 0 评论 -
分库分表分析:SpringBoot2.0.3.RELEASE+sharding-jdbc4.1.0+mybatis-plus3.4.1+druid1.1.22 快速搭建分库分表
文末有demo的git地址Apache ShardingSphere 是一套开源的分布式数据库解决方案组成的生态圈,它由 JDBC、Proxy 和 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署配合使用的产品组成。目前,数据分片、读写分离、数据加密、影子库压测等功能,以及对 MySQL、PostgreSQL、SQLServer、Oracle 等 SQL 与协议的支持,均通过插件的方式织入项目。ShardingSphere-JDBC定位为轻量级 Java 框架,在 Ja...原创 2021-05-25 10:01:57 · 626 阅读 · 0 评论 -
MySQL索引-B+树原理分析
索引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在 [1,2,3,4] 中找到 4 这个数据,直接对全数据检索也很快,没有必要费力气建索引再去查找。索引在 MySQL 数据库中分三类:B+ 树索引 Hash 索引 全文索引我们今天要介绍的是工作开发中最常接触到的 InnoDB 存储引擎中的 B+ 树索引。要介绍 B+ 树索引,就不得不提二叉查找树,平衡二叉树和 B 树这三种...原创 2021-05-24 15:27:46 · 138 阅读 · 0 评论 -
游标取数为什么要用两次FETCH NEXT FROM INTO语句
fetch next from mycursorinto @O_ID,@A_Salarywhile(@@fetch_status = 0)beginUpdate OriginSalary set O_Salary=O_Salary+@A_Salary where O_ID=@O_IDfetch next from mycursor into @O_ID,@A_Salaryend假设表tempTableid,text1,T12,T23,T3面代码省略,现在一句一句看fetch n...原创 2021-04-27 17:06:10 · 1833 阅读 · 0 评论 -
基于ssm的婚恋网站的设计与实现(寻爱网)(包含后台管理系统)
源码下载csdn地址:https://download.youkuaiyun.com/download/u014191624/11218848没有积分的联系我,我发给你开发平台:Eclipse+jdk8有什么不懂得随时问我吧,大家一起交流开发架构:springmvc+mybatis+spring开发数据库:mysqlweb容器:tomcat8管理工具:maven项目结构:...原创 2019-05-31 15:34:33 · 2553 阅读 · 18 评论