随笔分类 -  数据库 / MySQL

1
主要介绍MySQL
摘要:目录1 误删恢复数据1.1 引言1.2 解决方案1.2.1 通用操作1.2.1.1 确认binlog开启1.2.1.2 binlog模式1.2.1.3 binlog信息查询1.2.2 方案一:找到insert语句,重新插入1.2.2.1 找到binlog文件1.2.2.2 根据时间点解析binlog 阅读全文
posted @ 2024-12-27 10:38 上善若泪 阅读(113) 评论(0) 推荐(0) 编辑
摘要:目录1 distinct 和 group by效率1.1 distinct1.1.1 简单使用1.1.2 distinct多列去重1.2 group by的使用1.2.1 单列去重1.2.2 多列去重1.3 区别示例1.4 distinct和group by原理1.4.1 原理区别1.4.2 隐式排 阅读全文
posted @ 2024-10-19 13:38 上善若泪 阅读(53) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL不能用UUID做主键1.1 前言1.2 mysql和程序实例1.2.1 准备工作1.2.2 开始测试1.2.3 程序写入结果1.2.4 效率测试结果1.3 使用uuid和自增id的索引结构对比1.3.1 自增id1.3.2 uuid1.4 自增id缺点1.5 雪花算法2 插入或更新 阅读全文
posted @ 2024-09-11 21:17 上善若泪 阅读(226) 评论(0) 推荐(0) 编辑
摘要:目录1 大量数据优化1.1 引言1.2 评估表数据体量1.2.1 表容量1.2.2 磁盘空间1.2.3 实例容量1.3 出现问题的原因1.4 解决问题1.4.1 数据表分区1.4.1.1 简介1.4.1.2 分区限制和执行计划1.4.1.3 分区表的索引1.4.1.4 为什么分区键必须是主键的一部分 阅读全文
posted @ 2023-10-24 09:23 上善若泪 阅读(178) 评论(0) 推荐(0) 编辑
摘要:目录1 死锁产生原因分析1.1 产生原因1.2 产生示例1.2.1 案例一1.2.2 案例二1.2.3 案例三1.2.4 案例四1.2.5 案例五1.2.6 案例六1.3 死锁预防策略1.4 剖析死锁的成因1.5 解除死锁的占用1.5.1 死锁分析1.5.2 死锁解决1.5.3 MySQL中配置1. 阅读全文
posted @ 2023-02-20 11:14 上善若泪 阅读(164) 评论(0) 推荐(0) 编辑
摘要:[toc] # 1 索引数据结构 ## 1.1 简介 `索引`是一种数据结构,可以帮助我们快速的进行数据的查找 索引的数据结构和具体存储引擎的实现有关,在 `MySQL` 中使用较多的索引有 `Hash 索引`,`B+ 树索引`等,而我们经常使用的 `InnoDB` 存储引擎的默认索引实现为:`B+ 阅读全文
posted @ 2022-12-12 10:33 上善若泪 阅读(499) 评论(0) 推荐(0) 编辑
摘要:1 MySQL触发器 触发器创建: create trigger trigger_name before|after trigger_event on TableName for each row trigger_stmt; 参数说明: trigger_event就是insert|update|de 阅读全文
posted @ 2022-08-09 15:37 上善若泪 阅读(163) 评论(0) 推荐(0) 编辑
摘要:1 MySQL之JSON数据 总所周知,mysql5.7以上提供了一种新的字段格式json,大概是mysql想把非关系型和关系型数据库一口通吃,所以推出了这种非常好用的格式,这样,我们的很多基于mongoDB的业务都可以用mysql去实现了。当然了,5.7的版本只是最基础的版本,对于海量数据的效率是 阅读全文
posted @ 2022-08-01 14:23 上善若泪 阅读(8652) 评论(0) 推荐(0) 编辑
摘要:目录1 数据库维护1.1 数据库文件1.1.1 MySQL创建并管理的数据库文件1.1.2 MySQL数据库存放位置1.2 性能状态关键指标QPS和TPS1.3 开启慢查询日志1.4 数据库备份1.4.1 myqldump示例1.5 数据库修复1.5.1 myisamchk修复1.5.2 mysql 阅读全文
posted @ 2022-07-29 15:00 上善若泪 阅读(940) 评论(0) 推荐(0) 编辑
摘要:1 数据库事务 1.1 事务特性 事务的特性: 原子性(atomicity):事务是数据库的逻辑工作单位,而且是必须是原子工作单位,对于其数据修改,要么全部执行,要么全部不执行。 一致性(consistency):事务在完成时,必须是所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务 阅读全文
posted @ 2022-07-27 10:50 上善若泪 阅读(206) 评论(0) 推荐(0) 编辑
摘要:1 MySQL全局ID 1.1 前言 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。 为什么需要分布式全局唯一ID以及分布式ID的业务需求 在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识,如在美团点评的金融、支付、餐饮、酒店;猫眼电影等产品的系统中数据逐 阅读全文
posted @ 2022-03-18 11:10 上善若泪 阅读(6364) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL索引1.1 简介1.1.1 索引基础1.2 SQL优化1.2.1 查看执行计划1.2.2 show profile分析1.2.3 trace2 索引失效2.1 准备工作2.1.1 创建user表2.1.2 插入数据2.1.3 查看数据库版本2.2 联合索引2.2.1 联合索引中索引 阅读全文
posted @ 2022-02-08 12:46 上善若泪 阅读(803) 评论(0) 推荐(0) 编辑
摘要:1 需求说明 有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调整SQL后,耗时347 ms (execution: 阅读全文
posted @ 2021-09-18 23:26 上善若泪 阅读(1145) 评论(0) 推荐(0) 编辑
摘要:1 数据库范式 1.1 为什么要范式 为什么需要数据库范式呢,因为必须保证数据库设计的合理性 数据库设计关系整个系统的架构,关系到后续的开发效率和运行效率 数据库的设计主要包含了设计表结构和表之间的联系 1.2 如何是合理数据库 如何是合理数据库 结构合理 冗余较小 尽量避免插入删除修改异常 1.3 阅读全文
posted @ 2021-09-15 09:01 上善若泪 阅读(613) 评论(0) 推荐(0) 编辑
摘要:1 分组排序查询 1.1 引言 排名是数据库中的一个经典题目,实际上又根据排名的具体细节可分为3种场景: 连续排名:例如薪水3000、2000、2000、1000排名结果为1-2-3-4,体现同薪不同名,排名类似于编号 同薪同名但总排名不连续:例如同样的薪水分布,排名结果为1-2-2-4 同薪同名且 阅读全文
posted @ 2021-06-01 11:33 上善若泪 阅读(1425) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL查询1.1 sql语句的执行顺序1.2 频繁使用的select语句1.3 MySQL 逻辑架构1.4 连接器是如何授权的1.5 查询缓存的作用是什么1.6 逻辑架构中各种分析器1.6.1 分析器1.6.2 优化器1.6.3 执行器1.6.3.1 select 操作1.6.3.2 i 阅读全文
posted @ 2021-05-25 15:37 上善若泪 阅读(790) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL锁1.1 Mysql锁分类1.2 行锁表锁页锁和存储引擎锁机制1.2.1 行锁表锁页锁1.2.1.1 行锁1.2.1.2 表级锁1.2.1.3 页级锁1.2.2 存储引擎锁机制1.3 共享锁排他锁1.3.1 共享锁 Shared Locks(S锁)1.3.2 排他锁 Exclusi 阅读全文
posted @ 2021-04-15 11:46 上善若泪 阅读(207) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL事务1.1 MySQL事务操作1.2 MySQL事务保证原子性1.2.1 原子性介绍和保证1.2.2 隔离性讲解2 MySQL日志2.1 二进制日志(binlog)2.1.1 定义2.1.2 操作binlog2.1.3 无法写二进制日志2.1.3.1 报错现象2.1.3.2 清理二 阅读全文
posted @ 2021-04-10 16:21 上善若泪 阅读(311) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL索引基础操作1.1 添加索引1.1.1 普通索引1.1.2 索引中长度参数1.2 删除索引1.3 查看索引执行计划1.4 索引分类1.5 全文索引1.5 全文索引1.5.1 简介1.5.2 操作1.5.2.1 创建全文索引(FULLTEXT INDEX)1.5.2.2 删除全文索引 阅读全文
posted @ 2021-04-10 16:20 上善若泪 阅读(221) 评论(0) 推荐(0) 编辑
摘要:目录1 MySQL认识1.1 MySQL历史和认识1.2 数据库基本知识2 MySQL安装配置3 MySQL登录和权限3.1 用户登录3.1.1 登录命令3.1.2 登录报错处理3.2 创建用户3.2.1 创建用户3.2.3 删除用户3.2.4 重命名用户3.3 赋予并查看权限3.4 忘记并修改密码 阅读全文
posted @ 2021-04-10 16:18 上善若泪 阅读(165) 评论(0) 推荐(0) 编辑

1
点击右上角即可分享
微信分享提示