MySQL
文章平均质量分 84
NeverOW
这个作者很懒,什么都没留下…
展开
-
MySQL-MVCC机制
是什么?MVCC就是多版本并发控制,实现了【读-写冲突不加锁】,【非阻塞并发读】MVCC只针对读已提交和可重复读,如果是读未提交,每次都是当前读**基本思想是:**在每次【更新操作】时,旧版本的数据保存在【undo log日志中】并用【回滚指针】形成一条【版本链】,读数据的时候通过【readview视图】,拿到【版本链】中的旧数据,解决了读-写加锁效率低的问题对数据库的并发控制:既然有了MVCC不加锁解决读-写冲突,那么可以用MVCC再搭配乐观锁或者悲观锁去解决写-写冲突,完成对数据库的并发控制原创 2022-03-06 09:58:28 · 414 阅读 · 0 评论 -
MySQL-三大日志详解
三大日志日志分为二类逻辑日志:可以简单理解为记录的就是sql语句。物理日志:因为mysql数据最终是保存在数据页中的,物理日志记录的就是数据页变更。undo logundo log 记录数据被修改前的样子作用防止丢失数据,用于事务失败后的回滚Innodb 存储引擎的最大特点就是支持事务,如果本次更新失败,那么该事务中的所有的操作都必须回滚到执行前的样子,也就是说当事务失败的时候,也不会对原始数据有影响记录时机在mysql将要更新的数据加载到缓冲区Buffer pool 时,同时原创 2022-03-02 15:58:54 · 4597 阅读 · 1 评论 -
MySQL-锁详解
锁锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。小栗子打个比方,我们到淘宝上买一件商品,商品只有一件库存,这个时候如果还有另一个人买,那么如何解决是你买到还是另一个人买到的问题?这里肯定要用到事务,我们先从库存表中取出物品数量,然后插入订单,付款后插入付款原创 2022-03-02 15:57:18 · 530 阅读 · 0 评论 -
MySQL索引详解
索引简介MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。索引是一种用于快速查询和检索数据的数据结构一般来说索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储的磁盘上我们平常所说的索引,如果没有特别指明,都是指B树(多路搜索树,并不一定是二叉的)结构组织的索引。其中聚集索引,次要索引,覆盖索引,复合索引,前缀索引,唯一索引默认都是使用B+树索引,统称索引。当然,除了B+树这种类型的索引之外,还有哈稀索引(hash index)等。索引原创 2022-02-26 09:48:13 · 1522 阅读 · 0 评论 -
MySQL七大JOIN
7大Join简介A的独有+AB的公有B的独有+AB的公有AB的公有A的独有B的独有A的独有+B的独有+AB的公有A的独有+B的独有练习建表部门表DROP TABLE IF EXISTS `dept`;CREATE TABLE `dept` ( `dept_id` int(11) NOT NULL AUTO_INCREMENT, `dept_name` varchar(30) DEFAULT NULL, `dept_number` int(11) DEFA原创 2022-02-26 09:42:20 · 1426 阅读 · 2 评论 -
Mysql存储引擎
Mysql存储引擎1 如何用命令查看 #看你的mysql现在已提供什么存储引擎: mysql> show engines; #看你的mysql当前默认的存储引擎: mysql> show variables like '%storage_engine%';分类InnoDB存储引擎InnoDB是MySQL的默认事务型引擎,它被设计用来处理大量的短期(short-lived)事务。除非有非常特别的原因需要使用其他的存储引擎,否则应该优先考虑InnoDB引擎。行级锁原创 2022-02-26 09:39:26 · 244 阅读 · 0 评论 -
MySQL的逻辑架构详解
Mysql逻辑架构大致分为4层架构:连接层,服务层,引擎层,存储层连接层mysql提供给外界客户端连接的接口,不同客户端可以用自己的API连接mysql建立连接认证授权维持和管理连接等MySQL 驱动我们的系统是怎么和mysql进行连接和通信的呢?不可能是平白无故的就能接收和发送请求的吧,此时我们需要了解 MySQL 驱动概念的就是这个 MySQL 驱动在底层帮我们做了对数据库的连接,只有建立了连接了,才可以发送SQL语句执行CRUD多个连接怎么办?一次原创 2022-02-17 12:58:22 · 2273 阅读 · 0 评论 -
MySQL-事务详解
事务事务是由一系列对数据的访问与更新操作组成的程序执行逻辑单元,以便服务器保证数据完整性事务是数据库系统区别于其他一切文件系统的重要特性之一事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位,一个事务可以是一条或多条SQL语句组成,如果其中有任意一条语句不能完成或者产生错误,那么这个单元里所有的sql语句都要放弃执行,所以只有事务中所有的语句都成功地执行了,才可以说这个事务被成功地执行一般情况下,一个事务对应着一个完整的业务,一段程序也可能包含多个事务原创 2022-02-01 16:24:53 · 3130 阅读 · 3 评论