一、乐观锁说明 乐观锁的使用原理是在数据表中添加一个版本字段,每次先查询当前的版本,在更新数据的时候判断版本是否和查询到的版本一致,一致就说明数据没有被修改,可以操作数据并把版本号+1;如果版本号不一...
MySQL 悲观锁
一、什么是悲观锁 前文说明了MySQL事务在并发环境下会导致脏读和不可重复读等等的现象,数据库通过事务隔离级别也就是我们常说的锁来解决这个问题。悲观锁的工作原理是假设每次事务都会被其他事务打断,所以在...
MySQL的事务隔离级别
一、事务并发带来的问题 1.1 第一类丢失更新 两个事务同时更新一行数据,第一个事务正常更新,第二个事务中途退出回滚数据到初始状态,导致第一个事务更新失效。 如:银行卡存储了用户甲的余额4000,此时...
MySQL事务的基本用法
一、什么是事务 事务是一组SQL语句构成的语句集合,它保证所有的SQL都能全部执行或者全部不执行。 事务必须满足四个条件(ACID):Atomicity 原子性 Consistency 一致性 Iso...
源码编译安装Redis 6.x
一、编译安装 Redis官网地址:redis官网,官网可能会打不开,可以在github的发布页中下载:Release-redis。 当前最新版6.0-rc1,下载redis: [crayon-6621...
MySQL中CHAR(m)、VARCHAR(m)和INT(m)的区别
一、区别 char(m):m表示长度,固定m宽度的字符,不足用空格补齐,取出数据时会删掉尾部的空格。 varchar(m):m表示长度,不固定,有多少字符就存多少字符,不会删除尾部的空格。 int(m...
MYSQL中的分组GROUP BY的使用方法
一、概述 题外话:MYSQL 这个东西在工作前都用得少,因为在学校也没怎么学习过,就学了一点很浅的,了解有这个东西。然后后来自学才勉强算是把”增删改查“ 这四个基本操作学会,工作之后才发现远远...
MYSQL时间戳TIMESTAMP的更新:CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP
一、概述 在工作中,经常需要用到更新时间戳的操作,比如在插入一行语句之后要把时间设置成插入时间,或者修改了一行数据也要把时间设置为更新的时间。如果每次都是手动去获取时间然后通过update 去更新字段...
Linux源码安装mysql 5.6
一、概述 源码安装mysql的步骤比较繁琐,各种不小心然后导致了各种错误,鼓捣了一下午终于搞定,建议直接用yum install mysql命令 安装,简单省事 。 系统环境:CentOS6.9,腾讯...
MySQL连接join的使用方法
一、概述 join 可以用来描述多个表之间的关系,主要有以下几种用法: left join:左连接 right join:右连接 inner join:内连接 cross join:交叉连接,笛卡尔积...
5