【合集】MySQL的入门进阶强化——从基本概念到事务引擎到高可用 & 框架mybatis,JPA & 扩展PostgreSQL等

前言

SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言,它用于定义、操作和管理数据库中的数据。SQL是一种通用的语言,可以用于多种关系型数据库管理系统(RDBMS),如MySQL、Oracle、SQL Server等。

MySQL是一种开源的关系型数据库管理系统,它使用SQL作为其查询语言。MySQL是最流行的开源数据库之一,它具有高性能、可靠性和可扩展性。MySQL支持多用户、多线程和多表操作,可以在各种操作系统上运行。

MySQL最为最流行的开源数据库,其重要性不言而喻,也是大多数程序员接触的第一款数据库,深入认识和理解MySQL也比较重要。

本篇博客是MySQL相关的学习博客文章的合集篇,涵盖了MySQL从入门到进阶,再到强化的相关内容。

引出


1.MySQL相关的学习博客文章的合集篇;
2.涵盖MySQL从入门到进阶,再到强化的相关内容。

MySQL基本概念和基本语句

SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言,它用于定义、操作和管理数据库中的数据。SQL是一种通用的语言,可以用于多种关系型数据库管理系统(RDBMS),如MySQL、Oracle、SQL Server等。

MySQL是一种开源的关系型数据库管理系统,它使用SQL作为其查询语言。MySQL是最流行的开源数据库之一,它具有高性能、可靠性和可扩展性。MySQL支持多用户、多线程和多表操作,可以在各种操作系统上运行。

1.基本查询

SQL学习(1)——数据库概念+单表SQL查询+多表SQL查询

SQL进阶(2)——SQL语句类型 & 增删改查CRUD & 事务初步 & 表关联关系 & 视图 +索引

2.回望MySQL

MySQL进阶(回望MySQL)——从数据资产谈起 & MySQL的DOS命令、常用数据类型、SQL语句的分类 & SQL函数

在这里插入图片描述

3.JDBC

Java连接SQL数据库 & 单例封装数据库

MySQL进阶(再论JDBC)——JDBC编程思想的分析 & JDBC的规范架构 & JDBC相关的类分析

MySQL进阶

1.存储过程store procedure

MySQL(存储过程,store procedure)——存储过程的前世今生 & MySQL存储过程体验 & MybatisPlus中使用存储过程

2.MySQL的事务初步

MySQL进阶(事务)——转账事务的问题 COMMIT,ROLLBACK & 百万条数据插入的性能调优=3万次提交变成1次

3.再论事务【深入阐述】

MySQL进阶(再论事务)——什么是事务 & 事务的隔离级别 & 结合MySQL案例详细分析

主要内容:

1.事务(TRANSACTION)是一个不可分割的逻辑单元,包含了一组数据库操作命令,并且把所有的命令作为一个整体向系统提交,要么都执行、要么都不执行;

2.隔离级别和脏读、不可重复读以及幻象读的对应关系如下:

隔离级别脏读不可重复读幻读
READ UNCOMMITTED允许允许允许
READ COMMITED不允许允许允许
REPEATABLE READ 【默认的隔离级别】不允许不允许允许
SERIALIZABLE不允许不允许不允许

3.在MySQL数据库中,默认的事务隔离级别是REPEATABLE READ 可重复读;

4.MySQL的索引

MySQL的索引——索引的介绍及其数据结构B+树 & 索引的类型 & 索引的使用及其失效场景 & 相关名词解释

在这里插入图片描述

主要内容:

1.索引是存储引擎用于快速查找数据纪录的一种数据结构;
2.索引的数据结构,B+树;
3.主键作为B+树索引的键值称为聚集索引;以主键以外的列值作为键值构建的B+树索引称为非聚集索引;
4.索引失效:索引不满足左前缀,select *,or分割的条件,order by 非主键;
5.%开头的Like模糊查询–> 解决:select和where条件中的字段都出现在索引;
6.回表,先查到主键,再通过主键查数据,查了B+树两次;
7.索引覆盖:输出的列就是索引列,无需回表;

5.MyISAM和InnoDB引擎

MySQL进阶(数据库引擎)——MyISAM和InnoDB引擎的区别

内容摘要:

1.MyISAM 只有表级锁,而InnoDB 支持行级锁和表级锁,默认为行级锁;
2.MyISAM 不提供事务支持。而InnoDB提供事务支持;
3.MyISAM不支持,而InnoDB支持;
4.MyISAM不支持聚集索引,InnoDB支持聚集索引;
5MyISAM不支持,InnoDB支持。应对高并发事务,MVCC比单纯的加锁更高效;

特性InnoDBMyISAM
事务安全支持
存储限制64TB
空间使用
内存使用
插入数据的速度
对外键的支持支持

MySQL应用

0.数据库表设计

据库表设计及优化初步——项目中的数据库表究竟怎么设计?如何提高查询效率?

1.Mybaits的使用

  • 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使用报错集锦

在这里插入图片描述

2.Mybatis-Plus的使用

3.JPA的使用

Java Persistence APl(JPA)——JPA是啥?& SpringBoot整合JPA & JPA的增删改查 & 条件模糊查询 & 多对一查询

扩展其他数据库

1.PostgreSQL数据库

PostgreSQL数据库——Docker版本的postgres安装 & Navicat连接方式+导入向导使用 & SpringBoot结合Jpa使用PostgreSQL初步

2.图数据库Neo4j

MySQL集群主从搭建

1.本地搭建demo

MySQL持久化数据——主从分离 & Linux下创建2个MySQL的Docker容器 & 挂载方式启动 & 配置主从

2.云服务器搭建实战

redis漏洞回顾 & MySQL数据安全解决 搭建主从集群MySQL & 相关设置


总结

本篇博客是MySQL相关的学习博客文章的合集篇,涵盖了MySQL从入门到进阶,再到强化的相关内容。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Perley620

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值