Mysql

深入理解 MySQL 的事务隔离级别和 MVCC 机制

前言 我们都知道 MySQL 实现了 SQL 标准中的四个隔离级别,但是具体是如何实现的可能还一知半解,本篇博客将会从代码层面讲解隔离级别的实现方式,下面进入正题。 事务 考虑这样一个场景:博主向硝子酱的微信转了 520 块钱,在余额充足的正常情况下博主的账户余额会少 520 块,而硝子酱则会多 5 ......
级别 机制 事务 MySQL MVCC

Window系统的mysql数据库定时备份

原文:Window系统的mysql数据库定时备份 - Stars-One的杂货小窝 最近老大提到了数据库备份的功能,由于服务器是window系统的,所以研究了下备份的方案,特此记录 主要是实现每天定时备份功能,如果还要搞容灾的话,就得对mysql数据库进行主从配置了 cmd命令 核心的cmd命令如下 ......
备份 数据库 数据 Window 系统

一键部署MySQL8+keepalived双主热备高可用

概述 本次的文章会格外的长,网上大多的配置流程已经不可使用,本篇文章可以称为保姆级教程,而且通过shell脚本大大减少了部署mysql主从,双主的工作量。 如上图,VIP地址为192.168.10.100,如果主机192.168.10.129挂了,会自动切换到备机192.168.10.130上,由于 ......
keepalived MySQL8 MySQL

实时采集MySQL数据之轻量工具Maxwell实操

一个用于企业应用支持实时增量采集和全量采集MySQL数据开源框架Maxwell,功能强于Canal,比Flink CDC更易用。本篇先了解其定义和原理,然后通过安装和环境准备,了解其启动的两种方式,最后实操演示几个maxwell在企业中常用的场景示例。 ......
轻量 实时 Maxwell 工具 数据

MySQL空间暴涨150G导致锁定,发生了什么

背景 12月1号中午突然收到大量报警,某客户环境操作数据库大量失败,报错信息如下图所示: 这个报错我是第一次见,一时间有点无所适从,但是从字面意思来看是MySQL目前处于LOCK_WRITE_GROWTH状态,拒绝执行当前的语句,一定是MySQL出问题了。 初定位 我随即登录阿里云控制台查看MySQ ......
MySQL 空间 150G 150

深入解读MySQL InnoDB存储引擎Update语句执行过程

参考b站up 戌米的论文笔记 https://www.bilibili.com/video/BV1Tv4y1o7tA/ 书籍《mysql是怎样运行的》 极客时间《mysql实战45讲》 系列文章目录和关于我 一丶Mysql整体架构 MySQL 可以分为 Server 层和存储引擎层两部分 1.Ser ......
语句 过程 引擎 InnoDB Update

一步步带你设计MySQL索引数据结构

前言 MySQL的索引是一个非常重要的知识点,也基本上是面试必考的一个技术点,所以非常重要。那你了解MySQL索引的数据结构是怎么样的吗?为什么要采用这样的数据结构? 现在化身为MySQL的架构师,一步步迭代设计出MySQL的索引结构,保证你再也忘记不了索引的结构了,轻松通过面试。 索引介绍 MyS ......
数据结构 索引 结构 数据 MySQL

MYSQL-INNODB索引构成详解

作者:郑啟龙 摘要: 对于MYSQL的INNODB存储引擎的索引,大家是不陌生的,都能想到是 B+树结构,可以加速SQL查询。但对于B+树索引,它到底“长”得什么样子,它具体如何由一个个字节构成的,这些的基础知识鲜有人深究。本篇文章从MYSQL行记录开始说起,层层递进,包括数据页,B+树聚簇索引,B ......
MYSQL-INNODB 索引 INNODB MYSQL

《MySQL必知必会》之快速入门存储过程

使用存储过程 本章介绍什么是存储过程,为什么使用、如何使用,并介绍如何创建和使用存储过程的基本语法 存储过程 在实际应用中,往往需要执行多个表的多条sql语句 存储过程就是为以后的使用而保存的一条或者多条sql语句的集合 使用存储过程的好处:简单、安全、高性能 创建存储过程 需求:一个返回产品平均价 ......
过程 MySQL

MySQL中这14个牛逼的功能,惊艳到我了!!!

前言 我最近几年用MYSQL数据库挺多的,发现了一些非常有用的小玩意,今天拿出来分享到大家,希望对你会有所帮助。 1.group_concat 在我们平常的工作中,使用group by进行分组的场景,是非常多的。 比如想统计出用户表中,名称不同的用户的具体名称有哪些? 具体sql如下: select ......
功能 MySQL

MySQL JDBC驱动版本与数据库版本的对应关系及注意事项

事情发生 学了三遍的servlet,经典老师又教的第一万遍登陆注册,并且让实现,并且让演示,我们老师可能和之前的小学期公司老师 完全没有沟通过,我们小学期大作业都做了一个小项目出来还搁这登陆注册。 就把五个月前写的一个小项目拿出来,是一个类似菜鸟教程的网站,不过只有java的教程,这都是后话, 项目 ......
版本 注意事项 事项 数据库 数据

MySQL 的 NULL 值是怎么存储的?

大家好,我是小林。 之前有位读者在面字节的时候,被问到这么个问题: 如果你知道 MySQL 一行记录的存储结构,那么这个问题对你没什么难度。 如果你不知道也没关系,这次我跟大家聊聊 MySQL 一行记录是怎么存储的? 知道了这个之后,除了能应解锁前面这道面试题,你还会解锁这些面试题: MySQL 的 ......
MySQL NULL

mysql-DuplicateUpdate和java的threadpool的"死锁"

大家千万不要被文章的标题给迷惑了,他两在本篇文章是没有关系的, 今天给大家讲讲最近2个有意思的issue,分享一下我学到的 mysql DuplicateUpdate的用法要注意的点 java的threadpool使用不当会造成“死锁”问题 mysql DuplicateUpdate的用法要注意的点 ......

复现MySQL的索引选择失误以及通过OPTIMIZER_TRACE分析过程

复现MySQL的索引选择失误以及通过OPTIMIZER_TRACE分析过程 验证环境:MySQL 5.7.39 windows-pc 一、构造数据(生成150万数据) 构建一张账户表,带有一级部门id和二级部门id,并且建立有索引。比较典型的业务场景,根据部门id进行各类查询。 CREATE TAB ......

mysql基础问题三问(底层逻辑;正在执行;日志观察)

背景:经常面试会遇到且实际工作中也会应用到的三个场景: 目录: 一.mysql查询时的底层原理是什么? 二.如何查看正在执行的mysql语句? 三.如何观察mysql运行过程中的日志信息? - - - - - - - - - -分割线- - - - - - - - - - -一.mysql查询时的底 ......
底层 逻辑 正在 基础 问题

MySQL进阶实战5,为什么查询速度会慢

一、先了解一下MySQL查询的执行过程 MySQL在查询时,它是由很多子任务组成的,每个子任务都会消耗一定的时间,如果要想优化查询,实际上要优化其子任务,可以消除一些子任务、减少子任务的执行次数、让子任务执行的更快。 MySQL查询的执行过程:从客户端到服务器、然后在服务器进行解析、生成执行计划、执 ......
实战 速度 MySQL

MySQL进阶实战6,缓存表、视图、计数器表

一、缓存表和汇总表 有时提升性能最好的方法是在同一张表中保存衍生的冗余数据,有时候还需要创建一张完全独立的汇总表或缓存表。 缓存表用来存储那些获取很简单,但速度较慢的数据; 汇总表用来保存使用group by语句聚合查询的数据; 对于缓存表,如果主表使用InnoDB,用MyISAM作为缓存表的引擎将 ......
视图 缓存 计数器 实战 MySQL

MySQL数据库:2、MySQL的下载与安装、基本使用、系统服务制作

一、MySQL简介 ​ MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 二、安装与下载 1、下载流程 1、访问官方(www.mysql.com) 2、点击‘DOWNLOADS’,进入下载界面 3、下拉,找到‘ ......
MySQL 数据库 数据 系统

MySQL主从同步

1.什么是MySQL主从同步? “主”指的是MySQL主服务器(master),负责写请求。“从”指的是MySQL从服务器(slave),负责读请求。主从同步指的是将主服务器上的数据同步至从服务器。 2.为什么需要主从同步? 针对大流量,一台服务器已经不能满足要求。这个时候往往是将MySQL集群部署 ......
主从 MySQL

MySQL数据库:6、约束的概述及语法

Python基础之MySQL数据库 一、约束概述 1、为什么要约束 ​ 为了防止数据库中存在不符合语义规定的数据和防止错误信息的输入、输出造成无效的操作而提出的 ​ 为了保证数据的完整性,SQL规范以约束的方式对表数据进行额外的条件限制,从以下四个方面考虑 实体完整性:例如一个表中不能存在两条相同的 ......
语法 数据库 数据 MySQL

MySQL数据库:7、SQL常用查询语句

Python基础之MySQL数据库 一、SQL语句常用查询方法 前期数据准备 ​ 为了更加直观的展示、演示SQL语句查询关键字,需导入下列表格与记录(数据) ​ 模拟公司,导入创建公司员工表,表内包含:ID、姓名、年龄、工作时间、岗位 创建人员表格: create table emp( id int ......
常用查询 语句 常用 数据库 数据

MySQL 性能压测工具-sysbench,从入门到自定义测试项

sysbench是一个开源的、基于LuaJIT(LuaJIT 是 Lua 的即时编译器,可将代码直接翻译成机器码,性能比原生 lua 要高) 的、可自定义脚本的多线程基准测试工具,也是目前用得最多的 MySQL 性能压测工具。 基于 sysbench,我们可以对比 MySQL 在不同版本、不同硬件配 ......
sysbench 性能 工具 MySQL

MySQL锁,锁的到底是什么?

MySQL锁是解决资源竞争的一种方案。短短一句话却包含了3点值得我们注意的事情:1.对什么资源进行竞争?2.竞争的方式(或者说情形)有哪些?3.锁是如何解决竞争的?这篇文章开始带你循序渐进地理解这几个问题。 ......
MySQL

《MySQL必知必会》知识汇总二

六、用通配符进行过滤 本章介绍什么是通配符、如何使用通配符以及怎样使用LIKE操作符进行通配搜索 LIKE操作符 百分号(%)通配符 select prod_id,prod_name from products where prod_name like 'jet%'; %表示任何字符出现任意次数,也 ......
知识 MySQL
共6174篇  :206/206页 首页上一页206下一页尾页