MySQL

一文带你详解MySQL执行计划

前言 项目开发中,性能是我们比较关注的问题,特别是数据库的性能;作为一个开发,经常和SQL语句打交道,想要写出合格的SQL语句,我们需要了解SQL语句在数据库中是如何扫描表、如何使用索引的; MySQL提供explain/desc命令输出执行计划,我们通过...

【杂谈】 全球“万人迷”MySQL在中国“境遇”如何?

前段时间,笔者与一位资深开发者聊天,得知他作为后端工程师,辗转于多个软件服务公司,所服务的客户涵盖零售、交通、金融、互联网等行业。我问他接触最多的数据库是什么?他脱口而出:“MySQL!” MySQL可能是很多数据库从业者的启蒙数据库。DB-Engines...

SQL开发知识:MySQL分区之指定各分区路径详解

介绍 可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数据路径,因为数据和索引是存储在一个文件当中,对于MYISAM存储引擎可以分别指定数据文件和索引文件,一般也只有RANGE、LIST分区、sub子分区才有可能需要单独指定...

MySQL字段怎么拆分、什么时候拆分

前言 在数据库的维护当中对表的垂直才分是必然的,基本上在业务刚开始准守 3NF 是明智的,当然也可以有一些反范式的设计。但是,建议还是应该在3NF的基础上再酌情考虑反范式。 当遇到真的要对一些表进行拆分,那要拆那些字段嘞?下面我们就来分析一下。 场景 在新...

告诉你哪些情况会导致 MySQL数据库的索引失效

前言 为了验证 MySQL 中哪些情况下会导致索引失效,我们可以借助 explain 执行计划来分析索引失效的具体场景。 explain 使用如下,只需要在查询的 SQL 前面添加上 explain 关键字即可,如下图所示:   而以上...

详解Mysql事务并发脏读+不可重复读+幻读的相关知识

Mysql的事务隔离级别 Mysql有四种事务隔离级别,这四种隔离级别代表当存在多个事务并发冲突时,可能出现的脏读、不可重复读、幻读的问题。 脏读 大家看一下,我们有两个事务,一个是 Transaction A,一个是 Transaction B,在第一个...

教你如何在Ubuntu安装Mysql+启用远程连接的完整过程

背景 用的是百度云的云服务器(其他云服务器同理),系统是Ubuntu 20.04 LTS,Mysql版本8.0+,需求是在Windows上开发,可以随时远程连接读写服务器上的Mysql 建立到服务器的远程连接 用ssh客户端或者云服务器厂家提供的网页版控制...