MySQL

MySQL查询性能优化武器之链路追踪

前言 MySQL优化器可以生成Explain执行计划,我们可以通过执行计划查看是否使用了索引,使用了哪种索引? 但是到底为什么会使用这个索引,我们却无从得知。 好在MySQL提供了一个好用的分析工具 — optimizer trace...

MySql连接查询方式详解

1. 什么是连接查询 从一张表中单独查询,称为单表查询。 跨表查询,多张表联合其来查询,称为连接查询。 2. 连接查询的方式 内连接: 等值连接 非等值连接 自连接 外连接: 左外连接(左连接) 右外连接(右连接) 当对多张表进行查询,没有任何限制的时候,...

MySQL 超大表快速删除方式

MySQL 超大表快速删除 MySQL里面直接对大表执行drop table删除有可能导致MySQL Hang住,对业务造成影响。删除超大表的前提是该表是独立表空间,这样删除才有效。 表创建一个硬链接 # du -sh pay_bills.ibd  175...

详解MySql自连接,外连接,内连接 ,左连接,右连接

基础介绍 今天我跟大家把我理解的这一块全面的介绍下,配有sql语句送给大家。首先来给大家做个这一块的介绍: 1,自连接 说到底就是多张表都是同一张表添加一定条件的限制出来的数据。这简单理解吧。比如说 ……. where a.age ...

MySQL实现查询数据库表记录数

前言: mysql统计一个数据库里所有表的数据量,最近在做统计想查找一个数据库里基本所有的表数据量,数据量少的通过select count再加起来也是可以的,不过表的数据有点多,不可能一个一个地查。记得在Navicat里,选择一个数据量,点击表,如图: 那...

深入了解MySQL中的慢查询

一、什么是慢查询 什么是MySQL慢查询呢?其实就是查询的SQL语句耗费较长的时间。 具体耗费多久算慢查询呢?这其实因人而异,有些公司慢查询的阈值是100ms,有些的阈值可能是500ms,即查询的时间超过这个阈值即视为慢查询。 正常情况下,MySQL是不会...

mysql主键,外键,非空,唯一,默认约束及创建表的方法

前言: 在数据库中,数据表是数据库中最重要、最基本的操作对象,是数据存储的基本单位。数据表被定义为列的集合,数据在表中是按照行和列的格式来存储的。每一行代表一条唯一的记录,每一列代表记录中的一个域。 一、操作前提 创建数据表必须是在已经有数据库的前提下的哈...

MySQL联合查询实现方法详解

联合查询简单说 就是将两次查询合并在一起 例如 我们这里有一个用户表 我们先编写一段SQL select name from staff where age > 21; 查询年龄大于21的 输出结果如下 然后我们再写一段sql select name...

听说mysql中的join很慢?是你用的姿势不对吧

基于索引的join join查询中如何选择驱动表 不使用join,执行效率是否会更高 join 是进行两个或多个数据表进行关联查询的过程中,经常使用的一种查询手段。提到join,你一定会想到"笛卡尔积",当数据量很大的时候,"...

MySQL用户和数据权限管理详解

1、管理用户 1.1、添加用户 可以使用CREATE USER语句添加一个或多个用户,并设置相应的密码 语法格式: CREATE USER 用户名 [IDENTIFIED BY [PASSWORD]'密码'] CREATE USER用于...

关于mysql left join 查询慢时间长的踩坑总结

问题背景 两张表一张是用户表a(主键是int类型),一张是用户具体信息表b(用户表id字段是varchar类型)。 因为要显示用户及用户信息,所以需要关联查询,但发现left join后查询缓慢,耗时太长。用户表数据2万左右。 问题分析及处理 1、EXPL...