mysql
文章平均质量分 52
mysql数据底层原理,sql执行过程
痴迷的小小工匠
在繁碌的生活中,做一个小小工匠,痴迷其中
展开
-
IDEA同款数据库管理工具,提示太全了,用起来贼香!
最近体验了一把Jetbrains出品的数据库管理工具DataGrip,发现SQL提示真的很全,写起SQL来特别顺手,各种数据库支持也很全。整理了下其用法和使用技巧,助大家码出更高质量的SQL。下载https://www.jetbrains.com/datagrip/理解数据库选中表右键->修改表即可查看数据库表的相关信息;新建时可以添加表中的列,并且可以预览对应的SQL脚本;编写SELECT *语句并不是好习惯,可以通过选中*再使用Alt+Enter...原创 2021-08-01 16:17:31 · 2108 阅读 · 0 评论 -
DDL,DML,DCL举例
一、DDL is Data Definition Language statements.数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言。1、CREATE - to create objects in the database 创建。2、ALTER - alters the structure of the database 修改。3、DROP - delete objects from the database 删除。4、TRUNCATE - remove a...原创 2021-05-07 08:01:00 · 164 阅读 · 0 评论 -
带你一步一步从容理解事务级别
一.脏读1. 一个事务,读取了另一个事务中没有提交的数据,会在本事务中产生的数据不一致的问题解决方式:@Transactional(isolation = Isolation.READ_COMMITTED)读已提交:READ COMMITTED要求Transaction01只能读取Transaction02已提交的修改。二、不可重复读一个事务中,多次读取相同的数据, 但是读取的结果不一样, 会在本事务中产生数据不一致的问题。解决方式:@Transac...原创 2021-04-06 11:34:33 · 157 阅读 · 0 评论 -
mysq之使用锁
锁分类从性能上分为乐观锁(用版本对比来实现)和悲观锁 从对数据库操作的类型分,分为读锁和写锁(都属于悲观锁) 读锁(共享锁,S锁(Shared)):针对同一份数据,多个读操作可以同时进行而不会互相影响 写锁(排它锁,X锁(eXclusive)):当前写操作没有完成前,它会阻断其他写锁和读锁 从对数据操作的粒度分,分为表锁和行锁表锁每次操作锁住整张表。开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低;一般用在整表数据迁移的场景。#手动增加表..原创 2021-04-06 11:18:41 · 62 阅读 · 0 评论 -
mysql底层原理(索引)
注:数据库引擎包括innodb,myisam,本篇主要针对innodbinnodb数据库底层数据结构为B+Tree查看数据文件存储位置#登录数据库,进行查询SHOW VARIABLES LIKE '%datadir%'例如:我的mybatis_example库t_user表文件结构(只有一个文件:t_user.frm)特点非叶子节点不存储data,只存储索引(冗余),可以放更多的索引 叶子节点包含所有索引字段 叶子节点之间用双向指针连接,提高区间访问的性能下图原创 2021-04-06 10:40:34 · 96 阅读 · 0 评论