optimizer mysql trace

DML语句 ------- mysql增删改

DML语句 1、插入(insert) insert into 表 values(数据) 要求插入数据的数量,类型要和表的结构一致 insert into 表(列名) values(数据) 要求插入的数据的数量顺序和表名后的列要一致 insert into 表(列名) select 从另外一张表查询的 ......
语句 mysql DML

MySQL中json_extract函数说明

1. json_extract 使用场景说明在日常业务开发中通常mysql数据库中某个字段会需要存储json格式字符串,查询的时候有时json数据较大,每次全部取出再去解析查询效率较低,也较麻烦.好在Mysql5.7及之后的版本里提供了json_extract函数,可以通过key查询value值(如 ......
json_extract 函数 extract MySQL json

mysql 调优-索引失效

范围条件放最后面,不管单列还是多列索引,把能过滤最多的索引放前面 用不用索引最终都是优化器决定的,EXPLAIN json 格式里的执行成本决定 最左匹配,如果是联合索引,查找索引树的时候,只能根据第一个索引才能找到第二个第三个,如果顺序没对就不会走索引 -- 联合索引(name, code, ad ......
索引 mysql

71.mysql的线程池

mysql的线程池: 我们默认的线程处理方式是:one-thread-per-connection (服务器使用一个线程处理每个客户端连接),意思就是我们一个连接connection对应一个线程, 然后可以设置最大的connection连接数,max_connections。 这里有一个问题是,当我 ......
线程 mysql 71

django報錯 django.db.utils.OperationalError: (2006, 'MySQL server has gone away')

Internal Server Error: /lotus/sectors/getAll/129/ Traceback (most recent call last): File "/root/.cache/pypoetry/virtualenvs/lotus-mammoth-backend-BC7 ......
django OperationalError server MySQL utils

MySQL回表 索引覆盖01

来源: https://zhuanlan.zhihu.com/p/512662526?utm_id=0 ......
索引 MySQL

MySQL回表 索引覆盖02

资料来源: https://zhuanlan.zhihu.com/p/401198674?utm_id=0 ......
索引 MySQL

[MySQL事务一文搞懂]

[MySQL事务一文搞懂] 1、什么是事务? 事务(Transaction),顾名思义就是要做的或所做的事情,数据库事务指的则是作为单个逻辑工作单元执行的一系列操作(SQL语句)。这些操作要么全部执行,要么全部不执行。 2、为什么需要事务 把一系列sql放入一个事务中有两个目的: 为数据库操作提供了 ......
事务 MySQL

mysql 调优-索引建议

列是唯一的,或有唯一约束(alibaba 规范指出只要是唯一的必须加索引,哪怕是多列组合是唯一的也要添加一个多列索引) 频繁作为 where 条件的字段 经常 group by 或 order by 的字段(对 select 结果集再次索引才能再次得到一个最终结果集) distinct 字段 upd ......
索引 建议 mysql

mysql 调优-利用索引覆盖和下推

回表 只查询一次索引得不到想要的数据,典型的场景就是非聚簇索引查询:先拿到主键ID,再根据id查询一次得到数据(再次查询这就是回表) 索引覆盖:根据普通索引查询不回表就能得到数据 -- 联合索引(age, addr) select age, addr from t_user where age > ......
索引 mysql

mysql 调优-思路和系统参数

思路 是否存在周期波动(如果是云数据库,控制台能看到),如果是,分析高峰,适当加缓存 加了缓存仍没有解决问题,开启慢查询,并使用 EXPLAIN 分析慢 sql 索引情况,也可通过 profile 查看每个步骤时间成本 分析结果如果是等待时间长,对数据库参数进行调优(连接池等) 分析结果如果是 sq ......
思路 参数 系统 mysql

mysql如何修改用户名密码

ERROR 1698 (28000): Access denied for user ‘root’@'localhost’解决方法 1、问题描述 在使用如下指令进入mysql shell界面时 mysql -u root -p 报错:ERROR 1698 (28000): Access denied ......
用户名 密码 用户 mysql

mysql 锁机制

表锁:InnoDB 支持行锁,不代表着就不支持表锁 表锁的 S 和 X 锁,MyISAM 的锁(不建议在 InnoDB 中使用) -- 查看当前有表锁的表 show open tables where in_use > 0; -- 给表加 S 锁(所有事务都能读,所有事务都不能写) lock tab ......
机制 mysql

mysql 事务与隔离级别

ACID Atomicity:原子性(UNDO LOG实现),一组操作要么都成功,要么都失败 Consistency:一致性(UNDO LOG实现),从一个合法状态变为另一个合法状态(语义上不是语法上)。比如转账之后余额为负数,虽然也能守恒,但是明显不合法。或者转账时A账户钱少了,B账户钱没多,也是 ......
级别 事务 mysql

docker 部署nacos单机版并配置mysql支持

1. 配置mysql 数据库 选用mysql5.7表名为nacos_config,附上建表SQL SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- -- Table structure for config_info -- DROP TABLE IF ......
单机版 单机 docker nacos mysql

mysql 底层数据存储结构

内存和磁盘每次交互都是完整的页,数据页里面存放的是行(不仅仅是数据库的数据行,还有行格式等) 页(16k,计算机与内存的最小单位)的上层单位还有区(一个区存放64个页,64*16k = 1024k,刚好 1M),区上面是段(一个或多个区组成),段上面是表空间(一个或多个段组成) 行格式 show t ......
底层 结构 数据 mysql

mysql 存储引擎和索引

存储引擎 |引擎|特性|文件| |--|--|--| |InnoDB|默认,支持事务,支持外键,支持行锁和表锁|.frm 文件存储表结构.ibd 文件存储数据和索引| |MyISAM|不支持事务,不支持外键,只支持表锁不支持行锁专门维护了一个常量保存每个表的总记录数(count 很快)MyISAM ......
索引 引擎 mysql

springboot中使用application.properties配置mysql和sqlserver

1.使用依赖 * mysql: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency>* sqlserver: <dependency> <groupId>com ......

玩转MYSQL数据库之--视图详解

前言 从今天开始本系列文章就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深, 全面讲解数据库体系。 非常适合零基础的小伙伴来学习。 全文大约 【1297】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配 ......
视图 数据库 数据 MYSQL

关于使用Serilog配置MySql数据库和appsettings的问题

1、项目使用dtonet 6 WebApi。 2、Nuget包: 用来访问mysql数据库 Pomelo.EntityFrameworkCore.MySql Serilog日志 Serilog 配合dotnet Serilog.AspNetCore 读取环境变量配置 Serilog.Settings ......
appsettings Serilog 数据库 数据 问题

mysql 基础知识

-- _ 在mysql中是表示任一字符,下面查的是名字等于 *Aaaa 的 SELECT * FROM USER WHERE NAME = '_Aaaa'; -- 如果就要查名字是 _Aaaa 的人需要使用转移字符,把_当成普通字符 SELECT * FROM USER WHERE NAME = ' ......
基础知识 基础 知识 mysql

一个好用的命令行mysql客户端 mycli

官网:https://www.mycli.net/ 支持自动补全,高亮提示,非常好用; 查看表结构 \dt sys_menu; 有点遗憾的是没有展示注释信息,不可也可以用其它语句查看: show full columns from sys_menu; show create table sys_me ......
客户端 命令 客户 mysql mycli

MySQL explain type详解

type类型从快到慢:system > const > eq_ref > ref > range > index > ALLsystem表中只有一行记录(系统表)。是const类型的一个特殊情况。(目前InnoDB已经没有,在MyISAM可以)const表中最多只有一行匹配的记录。一般用在主键索引或 ......
explain MySQL type

MySQL触发器Trigger加载以及目前局限

GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。 GreatSQL是MySQL的国产分支版本,使用上与MySQL一致。 作者: 亮 文章来源:GreatSQL社区原创 概念介绍 首先需要知道MySQL中触发器特点,以及表table相关触发器加载方式 MySQL中单个tri ......
触发器 Trigger MySQL

mysql 批量新增含有unique 字段约束的方案

1.在代码里将列表对该字段进行去重,可以考虑用Set 2. insert ignore into,遇到错误跳过,即重复的话会跳过,执行下一条 <insert id="insertDeptList"> insert ignore into yx_admin_dept (dept_id,pid,name ......
字段 方案 unique mysql

Windows安装、配置、卸载MySQL教程

MySQL是一个关系型数据库管理系统,目前为Oracle旗下产品,它具有开源、体积小、速度快的优点,许多网站使用的都是MySQL数据库。 简单而言,MySQL数据库核心功能就是用来存储数据的。 MySQL数据库分为社区版和商业版,这里介绍的是社区版的安装教程 一、下载MySQL 打开MySQL官网下 ......
Windows 教程 MySQL

mysql的sql优化

sql优化 查询语句中不要使用select * 尽量减少子查询,使用关联查询(left join,right join,inner join)替代 减少使用IN或者NOT IN ,使用exists,not exists或者关联查询语句替代 or 的查询尽量用 union或者union all 代替( ......
mysql sql

mysql update语法 竟然不支持limit区间限制

首先查询可以这样写,没毛病的 SELECT * from a LIMIT 1000,2000 1.然后看一个不是区间的limit,更新满足条件的前1000条,没问题 update a set a.imp_date = 4 where a.is_sync = 0 limit 1000 2.这样写是错误 ......
区间 语法 update mysql limit

MySQL学习基础篇Day1

1. MySQL概述 在这一章节,我们主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连 接。 1.1 数据库相关概念 在这一部分,我们先来讲解三个概念:数据库、数据库管理系统、SQL。 名称 全称 简称 数据库 存储数据的仓库,数据是有组织的进行存储 DataBase( ......
基础 MySQL Day1 Day

011_我阿嬷都会_MySql

/* 说明:我阿嬷都会 MySql 目录: 一 创建表 二 插入数据 三 查询 四 关联删除 五 python */ 一 创建表 -- 创建表 : 员工 CREATE TABLE employee( emp_id INT PRIMARY KEY, name VARCHAR(20), birth_da ......
MySql 011