MySQL

windows下安装MySQL详细教程

1、下载安装包(官网下载) 直达链接:https://dev.mysql.com/downloads/mysql/        下载后放到指定目录下解压即可(给电脑新手忠告:注意不要放在C盘,养成好习惯,放C盘多了...

Mysql 实现向上递归查找父节点并返回树结构的示例代码

通过mysql 8.0以下版本实现,一个人多角色id,一个角色对应某个节点menu_id,根节点的父节点存储为NULL, 向上递归查找父节点并返回树结构。如果只有叶子,剔除掉; 如果只有根,只显示一个秃顶的根 ;如果既有叶子又有根则显示叶子与根。如果 传入...

MySql事务及ACID实现原理详解

逻辑架构和存储引擎 自动提交 MySQL 中默认采用的是自动提交(autocommit)模式,如下所示: 在自动提交模式下,如果没有 start transaction 显式地开始一个事务,那么每个 sql 语句都会被当做一个事务执行提交操作。 通过如下方...

MySQL索引详细解析

1. MySQL 索引的最左前缀原则 左前缀原则是联合索引在使用时要遵循的原则,查询索引可以使用联合索引的一部分,但是必须从最左侧开始。在创建联合索引时,要根据业务需求,where子句中将使用最频繁的一列放在最左边,mysql会一直向右匹配直到遇到范围查询...

SQL如何获取目标时间点或日期的方法实例

1.时间函数直接获取系统时间点、日期 (1)NOW函数 ①语法:Now() ②作用:MY SQL获取当前系统的日期和时间点。 select now() #返回结果:2022-4-16 16:23:26 #空格左边是日期,右边是时间点。 (2)GETDATE...

MySQL常用慢查询分析工具详解

引言 在日常的业务开发中MySQL 出现慢查询是很常见的 大部分情况下会分为两种情况: 1、业务增长太快 2、要么就是SQL 写的太xx了 所以对慢查询 SQL 进行分析和优化很重要其中 mysqldumpslow 是 MySQL 服务自带的一款很好的分析...

mysql主从基于docker和django实现读写分离

1.主从搭建 从同步的流程或原理: 1)master会将变动记录到二进制日志里面; 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把master发送的二进制写入到relay日志里面; 4)slave有一个S...

详解MySQL单列索引和联合索引

一、简介 利用索引中的附加列,可以缩小搜索的范围,但使用一个具有两列的索引不同于使用两个单独的索引。 联合索引的结构与电话簿类似,人名由姓和名构成,电话簿首先按姓氏进行排序,然后按名字对有相同姓氏的人进行排序。如果您知道姓,电话簿将非常有用,如果您知道姓和...

一文教你学会定位线上MySQL锁超时问题

前言: 昨晚我正在床上睡得着着的,突然来了一条短信。 什么?线上的订单无法取消! 我赶紧登录线上系统,查看业务日志。 发现有MySQL锁超时的错误日志。 不用想,肯定有另一个事务正在修改这条订单,持有这条订单的锁。 导致当前事务获取不到锁,一直等待,直到超...

MySQL数据库存储引擎介绍及数据库的操作详解

MySQL存储引擎 InnoDB存储引擎 InnoDB存储引擎是MySQL常见的的存储引擎, 它给MySQL的表提供了事务处理、回滚、崩溃修复和多版本并发控制等功能; 支持列值自动增长(列值不能为空且必须唯一); 支持外键。 缺点: 占用的空间相对较大 M...

MySQL中join查询的深入探究

[var] 相信大家 MySQL 都用了很久了,各种 join 查询天天都在写,但是 join 查询到底是怎么查的,怎么写才是最正确的,今天我就和大家一起学习探讨一下 [var] 数据准备 假设有两张表 t1、t2,两张表都存在有主键索引 id 和索引字段...

mysql通过INSERT IGNORE INTO插入拼音字符无效问题及解决

前言 在做一个批量导入关键词的功能时,发现关键词如果带有像é这样的拼音字符时,存入数据库时会识别为e,造成部分关键词没有被导入,且与原来部分关键词可能重复的情况,因此记录下来避免以后再踩坑。 提示:以下是本篇文章正文内容,下面案例可供参考&n...