SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言,它用于定义、操作和管理数据库中的数据。SQL是一种通用的语言,可以用于多种关系型数据库管理系统(RDBMS),如MySQL、Oracle、SQL Server等。
MySQL是一种开源的关系型数据库管理系统,它使用SQL作为其查询语言。MySQL是最流行的开源数据库之一,它具有高性能、可靠性和可扩展性。MySQL支持多用户、多线程和多表操作,可以在各种操作系统上运行。
MySQL最为最流行的开源数据库,其重要性不言而喻,也是大多数程序员接触的第一款数据库,深入认识和理解MySQL也比较重要。
本篇博客是MySQL相关的学习博客文章的合集篇,涵盖了MySQL从入门到进阶,再到强化的相关内容。
1.MySQL相关的学习博客文章的合集篇;
2.涵盖MySQL从入门到进阶,再到强化的相关内容。
SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言,它用于定义、操作和管理数据库中的数据。SQL是一种通用的语言,可以用于多种关系型数据库管理系统(RDBMS),如MySQL、Oracle、SQL Server等。
MySQL是一种开源的关系型数据库管理系统,它使用SQL作为其查询语言。MySQL是最流行的开源数据库之一,它具有高性能、可靠性和可扩展性。MySQL支持多用户、多线程和多表操作,可以在各种操作系统上运行。
SQL学习(1)——数据库概念+单表SQL查询+多表SQL查询
SQL进阶(2)——SQL语句类型 & 增删改查CRUD & 事务初步 & 表关联关系 & 视图 +索引
MySQL进阶(回望MySQL)——从数据资产谈起 & MySQL的DOS命令、常用数据类型、SQL语句的分类 & SQL函数

MySQL进阶(再论JDBC)——JDBC编程思想的分析 & JDBC的规范架构 & JDBC相关的类分析
MySQL(存储过程,store procedure)——存储过程的前世今生 & MySQL存储过程体验 & MybatisPlus中使用存储过程
MySQL进阶(事务)——转账事务的问题 COMMIT,ROLLBACK & 百万条数据插入的性能调优=3万次提交变成1次
MySQL进阶(再论事务)——什么是事务 & 事务的隔离级别 & 结合MySQL案例详细分析
主要内容:
1.事务(TRANSACTION)是一个不可分割的逻辑单元,包含了一组数据库操作命令,并且把所有的命令作为一个整体向系统提交,要么都执行、要么都不执行;
2.隔离级别和脏读、不可重复读以及幻象读的对应关系如下:
| 隔离级别 | 脏读 | 不可重复读 | 幻读 |
|---|---|---|---|
| READ UNCOMMITTED | 允许 | 允许 | 允许 |
| READ COMMITED | 不允许 | 允许 | 允许 |
| REPEATABLE READ 【默认的隔离级别】 | 不允许 | 不允许 | 允许 |
| SERIALIZABLE | 不允许 | 不允许 | 不允许 |
3.在MySQL数据库中,默认的事务隔离级别是REPEATABLE READ 可重复读;
MySQL的索引——索引的介绍及其数据结构B+树 & 索引的类型 & 索引的使用及其失效场景 & 相关名词解释

主要内容:
1.索引是存储引擎用于快速查找数据纪录的一种数据结构;
2.索引的数据结构,B+树;
3.主键作为B+树索引的键值称为聚集索引;以主键以外的列值作为键值构建的B+树索引称为非聚集索引;
4.索引失效:索引不满足左前缀,select *,or分割的条件,order by 非主键;
5.%开头的Like模糊查询–> 解决:select和where条件中的字段都出现在索引;
6.回表,先查到主键,再通过主键查数据,查了B+树两次;
7.索引覆盖:输出的列就是索引列,无需回表;
MySQL进阶(数据库引擎)——MyISAM和InnoDB引擎的区别
内容摘要:
1.MyISAM 只有表级锁,而InnoDB 支持行级锁和表级锁,默认为行级锁;
2.MyISAM 不提供事务支持。而InnoDB提供事务支持;
3.MyISAM不支持,而InnoDB支持;
4.MyISAM不支持聚集索引,InnoDB支持聚集索引;
5MyISAM不支持,InnoDB支持。应对高并发事务,MVCC比单纯的加锁更高效;
| 特性 | InnoDB | MyISAM |
|---|---|---|
| 事务安全 | 支持 | 无 |
| 存储限制 | 64TB | 有 |
| 空间使用 | 高 | 低 |
| 内存使用 | 高 | 低 |
| 插入数据的速度 | 低 | 高 |
| 对外键的支持 | 支持 | 无 |
据库表设计及优化初步——项目中的数据库表究竟怎么设计?如何提高查询效率?
mybatis 是一个优秀的基于 java 的持久层框架,主要应用于关系型数据库(sql),它内部封装了 jdbc,使开发者只需要关注 sql 语句本身,而不需要花费精力去处理加载驱动、创建连接、创建 statement ,封装数据等繁杂的过程。
mybatis 通过 xml 或注解的方式将要执行的各种 statement 配置起来,并通过 java 对象和 statement 中sql 的动态参数进行映射生成最终执行的 sql 语句,最后由 mybatis 框架执行 sql 并将结果映射为 java 对象并返回。
采用 ORM 思想解决了实体和数据库映射的问题,对 jdbc 进行了封装,屏蔽了 jdbc api 底层访问细节,使我们不用与 jdbc api 打交道,就可以完成对数据库的持久化操作。
Mybatis学习(1)——mybatis介绍 & 入门案例 & 全局配置文件详解 & 增删改查 + mybatis事务 & mapper.xml文件#{} 和 ${} & 动态SQL入门
Mybatis进阶(2)——为什么用mybatis?& 多表查询解决 & 延迟加载 & mybatis缓存
Mybatis应用(3)——mybatis框架使用 & mybatis项目应用初步 & mybatis使用报错集锦

Java Persistence APl(JPA)——JPA是啥?& SpringBoot整合JPA & JPA的增删改查 & 条件模糊查询 & 多对一查询
PostgreSQL数据库——Docker版本的postgres安装 & Navicat连接方式+导入向导使用 & SpringBoot结合Jpa使用PostgreSQL初步
MySQL持久化数据——主从分离 & Linux下创建2个MySQL的Docker容器 & 挂载方式启动 & 配置主从
redis漏洞回顾 & MySQL数据安全解决 搭建主从集群MySQL & 相关设置
本篇博客是MySQL相关的学习博客文章的合集篇,涵盖了MySQL从入门到进阶,再到强化的相关内容。