![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
哲里哲里
更好的自己
展开
-
SQL中的in与not in、exists与not exists的区别
in是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询,一直以来认为exists比in效率高的说法是不准确的。如果查询的两个表大小相当,那么用in和exists差别不大;如果两个表中一个较小一个较大,则子查询表大的用exists,子查询表小的用in...原创 2020-09-24 07:29:33 · 139 阅读 · 0 评论 -
MYSQL 复制的工作原理
目录一、工作原理二、存在的问题一、工作原理复制(replication)是MySQL数据库提供的一种高可用高性能的解决方案,一般用来建立大型的应用。总体来说,replication的工作原理分为以下5个步骤:步骤一:主库db的更新事件(update、insert、delete)被写到binlog步骤二:从库发起连接,连接到主库步骤三:此时主库创建一个binlog dump thread线程,把binlog的内容发送到从库步骤四:从库启动之后,创建一个I/O线程,读取主库传过来.原创 2020-06-29 08:10:53 · 1076 阅读 · 0 评论 -
MYSQL-InnoDB存储引擎--- 锁
锁的类型一致性非锁定读, 快照数据,mvcc(多版本并发控制),在事务隔离级别READ COMMITTED和REPEATABLEREAD(InnoDB存储引擎的默认事务隔离级别)下,InnoDB存储引擎使用非锁定的一致性读。然而,对于快照数据的定义却不相同。在READ COMMITTED事务隔离级别下,对于快照数据,非一致性读总是读取被锁定行的最新一份快照数据。而在REPEATABLE R...原创 2020-05-05 21:41:57 · 207 阅读 · 0 评论 -
并发条件下update条件不当引发死锁问题
项目压力测试数据库中发生死锁问题,定位问题后发现是update语句条件不当导致,现在记录下来,和大家一起分享下!数据库:mysql表结构大致如下Tablecolumn_a column_b column_c A1 B1 C1 A2 B2 C2 A3 B3 C3 其中column_a,column_b为联合索引...原创 2019-03-27 23:53:54 · 2321 阅读 · 0 评论