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