NOT

10 09 | 普通索引和唯一索引,应该怎么选择?

今天的正文开始前,我要特意感谢一下评论区几位留下高质量留言的同学。 用户名是 @某、人 的同学,对文章的知识点做了梳理,然后提了关于事务可见性的问题,就是先启动但是后提交的事务,对数据可见性的影响。@夏日雨同学也提到了这个问题,我在置顶评论中回复了,今天的文章末尾也会再展开说明。@Justin和@倪 ......
索引 10 09

11 10 | MySQL为什么有时候会选错索引?

前面我们介绍过索引,你已经知道了在MySQL中一张表其实是可以支持多个索引的。但是,你写SQL语句的时候,并没有主动指定使用哪个索引。也就是说,使用哪个索引是由MySQL来确定的。 不知道你有没有碰到过这种情况,一条本来可以执行得很快的语句,却由于MySQL选错了索引,而导致执行速度变得很慢? 我们 ......
索引 有时候 MySQL 11 10

12 11 | 怎么给字符串字段加索引?

现在,几乎所有的系统都支持邮箱登录,如何在邮箱这样的字段上建立合理的索引,是我们今天要讨论的问题。 假设,你现在维护一个支持邮箱登录的系统,用户表是这么定义的: mysql> create table SUser( ID bigint unsigned primary key, email varc ......
字段 字符串 字符 12 11

13 12 | 为什么我的MySQL会“抖”一下?

平时的工作中,不知道你有没有遇到过这样的场景,一条SQL语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢,并且这样的场景很难复现,它不只随机,而且持续时间还很短。 看上去,这就像是数据库“抖”了一下。今天,我们就一起来看一看这是什么原因。 你的SQL语句为什么变“慢”了 在前面 ......
MySQL 13 12

14 13 | 为什么表数据删掉一半,表文件大小不变?

经常会有同学来问我,我的数据库占用空间太大,我把一个最大的表删掉了一半的数据,怎么表文件的大小还是没变? 那么今天,我就和你聊聊数据库表的空间回收,看看如何解决这个问题。 这里,我们还是针对MySQL中应用最广泛的InnoDB引擎展开讨论。一个InnoDB表包含两部分,即:表结构定义和数据。在MyS ......
大小 文件 数据 14 13

15 14 | count(*)这么慢,我该怎么办?

在开发系统的时候,你可能经常需要计算一个表的行数,比如一个交易系统的所有变更记录总数。这时候你可能会想,一条select count(*) from t 语句不就解决了吗? 但是,你会发现随着系统中记录数越来越多,这条语句执行得也会越来越慢。然后你可能就想了,MySQL怎么这么笨啊,记个总数,每次要 ......
怎么办 count 15 14

16 15 | 答疑文章(一):日志和索引相关问题

在今天这篇答疑文章更新前,MySQL实战这个专栏已经更新了14篇。在这些文章中,大家在评论区留下了很多高质量的留言。现在,每篇文章的评论区都有热心的同学帮忙总结文章知识点,也有不少同学提出了很多高质量的问题,更有一些同学帮忙解答其他同学提出的问题。 在浏览这些留言并回复的过程中,我倍受鼓舞,也尽我所 ......
索引 问题 文章 日志 16

17 16 | “order by”是怎么工作的?

在你开发应用的时候,一定会经常碰到需要根据指定的字段排序来显示结果的需求。还是以我们前面举例用过的市民表为例,假设你要查询城市是“杭州”的所有人名字,并且按照姓名排序返回前1000个人的姓名、年龄。 假设这个表的部分定义是这样的: CREATE TABLE `t` ( `id` int(11) NO ......
order 17 16

计讯物联5G数采仪助力打造化工园区企业工况监测系统

项目背景 随着我国化工行业的快速发展,化工园区已成为化工行业发展的重要阵地,化工企业聚集,危险化学品安全风险集中,安全规范问题逐渐成为行业关注的焦点。然而,我国化工园区发展水平发展参差不齐,尤其是在安全风险管控转型、智能化升级、专业监管等方面存在明显不足和问题,安全环境风险系数较高,亟需行业政策与监 ......
工况 园区企业 园区 化工 系统

docker简单入门

==docker== 1.虚拟化 ​ 虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的 ......
docker

使用etcd实现Master的选举功能

背景 说起master选举,最开始想到的可能就是zookeeper,但有些场景zookeeper的使用过于繁重和复杂,又由于etcd是基于Raft的分布式K/V存储,强一致性的K/V读写是核心。 所以造就了etcd可以用于master的选举的场景。 原理 etcd clientv3 concurre ......
功能 Master etcd

实验4

task1.1 #include <stdio.h> #define N 4 int main() { int a[N] = {2, 0, 2, 3}; char b[N] = {'2', '0', '2', '3'}; int i; printf("sizeof(int) = %d\n", siz ......

Atcoder题解:Agc018_f

首先观察这个奇怪的子树为 $1$ 或 $-1$ 的限制。 看不出来性质,润了。 我们不如直接把 $A$ 树和 $B$ 树拆开,变成两棵树,然后在树上留一下匹配的性质。 第一,我们对着样例构造一下,发现似乎有解的样例都有 $abs(X_i)\le 1$ 的解。 这就提示我们猜用 $-1,0,1$ 就够 ......
题解 Atcoder Agc 018

【spring-retry】Spring 提供的循环重试功能包

1 前言 今天看科技类的文章发现一个新的包,还是Spring提供的,用于失败重试的,我们这节来简单看看哈。 2 spring-retry 使用 2.1 依赖引入 <dependency> <groupId>org.springframework.retry</groupId> <artifactId ......
spring-retry 功能 spring Spring retry

7 06 | 全局锁和表锁 :给表加个字段怎么有这么多阻碍?

今天我要跟你聊聊MySQL的锁。数据库锁设计的初衷是处理并发问题。作为多用户共享的资源,当出现并发访问的时候,数据库需要合理地控制资源的访问规则。而锁就是用来实现这些访问规则的重要数据结构。 根据加锁的范围,MySQL里面的锁大致可以分成全局锁、表级锁和行锁三类。今天这篇文章,我会和你分享全局锁和表 ......
字段 全局 06

8 07 | 行锁功过:怎么减少行锁对性能的影响?

在上一篇文章中,我跟你介绍了MySQL的全局锁和表级锁,今天我们就来讲讲MySQL的行锁。 MySQL的行锁是在引擎层由各个引擎自己实现的。但并不是所有的引擎都支持行锁,比如MyISAM引擎就不支持行锁。不支持行锁意味着并发控制只能使用表锁,对于这种引擎的表,同一张表上任何时刻只能有一个更新在执行, ......
功过 性能 07

9 08 | 事务到底是隔离的还是不隔离的?

你好,我是林晓斌。你现在看到的这篇文章是我重写过的。在第一版文章发布之后,我发现在介绍事务可见性规则时,由于引入了太多概念,导致理解起来很困难。随后,我索性就重写了这篇文章。现在的用户留言中,还能看到第一版文章中引入的up_limit_id的概念,为了避免大家产生误解,再此特地和大家事先说明一下。 ......
事务 还是 08

spring boot过滤器实现项目内接口过滤

spring boot过滤器实现项目内接口过滤 业务 由于业务需求,存在两套项目,一套是路由中心,一套是业务系统. 现在存在问题是,路由中心集成了微信公众号与小程序模块功能,业务系统部署了多套服务. 现在需要通过调用路由中心将接口重新路由到指定的业务系统中 需要处理的问题 将小程序,公众号用户信息与 ......
过滤器 接口 项目 spring boot

实验4

task1 #include <stdio.h> #define N 4 int main(){ int a[N] = {2, 0, 2, 3}; char b[N] = {'2', '0', '2', '3'}; int i; printf("sizeof(int) = %d\n", sizeof ......

experiment4

实验一#include<stdio.h> #include<stdlib.h> #define N 4 int main(){ int a[N]={2,0,2,3}; char b[N]={'2','0','2','3'}; int i; printf("sizeof(int)=%d\n",size ......
experiment4 experiment

关于useEffect 的 return有问题

return () => { }; // 改为这样return 解决意外语法问题 ......
useEffect return 问题

Hybrid Beamforming 混合波束成形 HBF

(161条消息) 混合波束成形|基础:深入浅出5G,毫米波,大规模MIMO与波束赋形_B417科研笔记的博客-CSDN博客 5G关键技术之波束成型 - 知乎 (zhihu.com) (162条消息) 混合波束成形|进阶:深入浅出混合波束赋形_B417科研笔记的博客-CSDN博客 图中数据处理部分,除 ......
波束 Beamforming Hybrid HBF

某周总结

| 编号 | 题目 | AC sub | Sol Link | done | | :--: | : : | : : | : : | :--: | | 1 | P9165 「INOH」Round 1 - 意外 | | Link | √ | | 2 | P8258 [CTS2022] 独立集问题 | | ......

四种语言刷算法之对链表进行插入排序

力扣147. 对链表进行插入排序 1、C /** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */ struct ListNode* inserti ......
算法 语言

SATI 文献题录信息统计分析工具

SATI支持以下数据分析任务: 多种数据清洗工具:文献去重、词干提取、应用停用词、智能清洗等。 提取高频字段,并输出频次排名列表。 基于高频字段生成时间序列图,可输出下载时间序列数据。 构建高频字段共现矩阵,并输出Excel/TSV格式矩阵。 自动基于共现矩阵,生成知识图谱 (Network/Kno ......
题录 统计分析 文献 工具 信息

MySQL常用命令

查询所有数据库名![image] show databases;(https://img2023.cnblogs.com/blog/2805463/202304/2805463-20230420144431240-201364771.png) (使用哪个数据库)use [database name] ......
命令 常用 MySQL

常用正则表达式

1、日期 格式 yyyy-MM-dd 包括正确性验证 ^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][0-9]|3[0-1]))|(02-(0[1-9]|[1-2][0-9]))|((0[469]|11)-(0[1-9]|[1-2][0-9]|30)))$ ......
正则 表达式 常用

共享栈

#include <iostream> #define MAXSIZE 10 //定义共享栈的结构体 typedef struct { int data[MAXSIZE]; int top,rear; }SqStack; //初始化共享栈,令首位索引分别指向栈头和栈尾 bool initStack( ......

踩内存问题定位手段汇总

最近项目中遇到一个全局变量被莫名修改的问题,代码排查了好久居然没发现,确实有些惭愧,这时候使用一些辅助工具帮助定位就很有必要也比较快速精准!全局变量被修改无非就三种原因:1、自己写的代码修改的;2、数组越界导致的;3、变量定义的时候没有初始化; 排查手段:手段一:踩内存周边地址排查排查被踩内存周边地 ......
手段 内存 问题

2 01 | 基础架构:一条SQL查询语句是如何执行的?

你好,我是林晓斌。 这是专栏的第一篇文章,我想来跟你聊聊MySQL的基础架构。我们经常说,看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题。同样,对于MySQL的学习也是这样。平时我们使用数据库,看到的通常都是一个整体。比如,你有个最简单的表,表里只有一个ID字段 ......
语句 架构 基础 SQL 01