MySQL 基础常用命令总结
MySQL 基础常用命令 注意:MySQL在centos中安装的是5.7版本的,编辑MySQL时会有个报错,需要执行: ? 1 s...
MySQL 基础常用命令 注意:MySQL在centos中安装的是5.7版本的,编辑MySQL时会有个报错,需要执行: ? 1 s...
1.GTID基本概念 MySQL 5.6.5开始支持的,全局事务标识符(GTID(Global Transaction ID))是创建的唯一标识符,并与在源(主)服务器上提交的每个事务相关联...
一 前言 提出这个问题,是因为在工作中发现 mysql 中的 user 表的 id 默认是自增的,但是数据库存储的结果却不是连续的。 user 表结构: CREATE TABL...
大家好,我是小龙。之前阿里二面问过我这样一个问题: 面试官:"MySQL主键你一般怎样用?" 心想:"嘿嘿,面试官肯定想问InnoDB引擎索引特性相关知识!“ 小龙:”平时主键...
什么是索引 MySql官方索引的定义:索引(Index)是帮助MySql高效获取数据的数据结构,索引的目的在于提高查询效率,类比字典;实际上索引也是一张表,该表保存了主键与索引字段,并指向实...
1、利用uuid函数生成唯一且不规则的主键id sql: CREATE TABLE `test` ( `id` varchar(100) COLLATE utf8_eston...
一、自增值保存在哪儿? 不同的引擎对于自增值的保存策略不同 1.MyISAM引擎的自增值保存在数据文件中 2.InnoDB引擎的自增值,在MySQL5.7及之前的版本,自增值保存在内...
需求:查询进行中的活动数据 进行中一共有以下几种情况: 1.开始时间为空,结束时间为空, 此结果数据将永远为进行中的数据 2.开始时间为空,结束时间不为空,则当前时间在结束时间之前,为进行中...
一、外键约束 MySQL通过外键约束来保证表与表之间的数据的完整性和准确性。 什么是外键: 主键:是唯一标识一条记...
并发场景 最近做了一些分布式事务的项目,对事务的隔离性有了更深的认识,后续写文章聊分布式事务。今天就复盘一下单机事务的隔离性是如何实现的? 隔离的本质就是控制并发,如果SQL语句就是串行...
多表连接的基本语法 多表连接,就是将几张表拼接为一张表,然后进行查询 select 字段1, 字段2, ... from 表1 {inner|lift|right} join 表2...
前言 国家等级保护三级安全要求,mysql 的 ssl 需要安全证书加密,这里需要研究一下,选几个账户演示下即可。mysql 的版本为 8.0.20 一、Mysql 启用 SSL...
MySQL约束操作 概念:对表中的数据进行限定,保证数据的正确性,有效性和完整性。 分类: 主键:primary key 非空约束:not null 唯一约束:un...
前言 在日常开发中,存储数据的最常用的方式便是数据库了,其中最为著名的便是MySQL数据库,因它简便易于上手而且可扩展性强大,跨平台使得它广为使用。上一篇文章,我们讲到了它的安装,今天...
前言 自从 2018 年发布第一版 MySQL 8.0.11 正式版至今,MySQL 版本已经更新迭代到 8.0.26,相对于稳定的 5.7 版本来说,8.0 在性能上的提升是毋庸置疑...
在介绍mysql的多版本并发控制mvcc的过程中,我们提到过mysql中存在一些隐藏列,例如行标识、事务id、回滚指针等,不知道大家是否和我一样好奇过,要怎样才能实际地看到这些隐藏列的值呢?...
前言 MySQL中有六种日志文件,分别是:重做日志(redo log)、回滚日志(undo log)、二进制日志(binlog)、错误日志(errorlog)、慢查询日志(slow quer...
前言 最近在做项目涉及到Mysql的复杂日期查询,日期查询其实在数据库中查询其实还是用的挺多的,比如查询开始日期到结束日期的区间信息,查询日期小于有效日期的信息,查询当天的日期,明天的日期,...
MySQL读取my.cnf的顺序 一、mysql.server启动方式 ? 1 2 basedir=/opt/mysql...
最近在复习mysql,正好看到了mysql 日期时间,本文就给自己留个笔记,顺便分享给大家 now (); 当前具体的日期和时间 curdate (); 当前日期 curt...
MYSQL METADATA LOCK(MDL LOCK)学习 理论知识和加锁类型测试 前言: 源码版本:5.7.14 注意MDL和DML术语的不同 一、初步了解...
抛出问题:大家知道 binlog 可以用来归档,也可以用来做主备同步,但它的内容是什么样的呢?为什么备库执行了 binlog 就可以跟主库保持一致了呢? mysql 主备的基本原理...
Mysql5.6版本之前 更新步骤 对原始表加写锁 按照原始表和执行语句的定义,重新定义一个空的临时表。 对临时表进行添加索引(如果有)。 再将原始表中的数据逐条...
基于 Mysql 实现一个搜索引擎 前言: 其实 Mysql 很早就支持全文索引了,只不过一直只支持英文的检索,从5.7.6 版本开始,Mysql 就内置了 ngram 全文解析器,用来...
MySQL从库Seconds_Behind_Master延迟总结 一、延迟分类 延迟我们可将其分为两类: 1、第一类(成服务器有较高的负载)...
前言 在日常开发中,存储数据的最常用的方式便是数据库了,其中最为著名的便是MySQL数据库,因它简便易于上手而且可扩展性强大,跨平台使得它广为使用,今天我们就来具体聊聊它的安装。...
前言 大家好,我是捡田螺的小男孩。(求个星标置顶) 我们日常做分页需求时,一般会用limit实现,但是当偏移量特别大的时候,查询效率就变得低下。本文将分四个方案,讨论如何优化MyS...
MySQL Load Data 的多种用法 一、LOAD 基本背景 我们在数据库运维过程中难免会涉及到需要对文本数据进行处理,并导入到数据库中,本文整理了一些导入...
MySQL Shell import_table数据导入 1. import_table介绍 这一期我们介绍一款高效的数据导入工具,MySQL Shell 工具集中的i...
Mysql主从同步配置 配置准备: 需要两个数据库 mysql 可视化工具,当然使用用命令行也可以 我这里演示使用 docker 启动两个 mysql 容器, 你也可以...
前言 前段时间,因为项目需求,需要根据关键词搜索聊天记录,这不就是一个搜索引擎的功能吗? 于是我第一时间想到的就是 ElasticSearch 分布式搜索引擎,但是由于一些原因,公司的服...
前言 影响一个系统的运行速度的原因有很多,是多方面的,甚至可能是偶然性的,或前端,或后端,或数据库,或中间件,或服务器,或网络等等等等,真正的去定位一个问题需要对系统有一定的认知,可以根据自...
关于MySQL8的WITH查询学习 前言: 对于逻辑复杂的sql,with可以大大减少临时表的数量,提升代码的可读性、可维护性 MySQL 8.0终于开始支持with语句了,...
prometheus通过exporter监控mysql,并用grafana图表展示 概述: prometheus是由SoundCloud开发的开源监控告警系统并且自带时序数据库,基于Go...
发现问题 近期通过 mysql 命令连接 mysql server 的时候, 出现了不能输入中文的现象, 如下所示: ? 1 2 3 4...
char与varchar的区别 以上就是当面试官问mysql中char与varchar的区别的详细内容,更多关于char与varchar的区别的资料请关注...
索引合并是mysql底层为我们提供的智能算法。了解索引合并的算法,有助于我们更好的创建索引。 索引合并是通过多个range类型的扫描并且合并它们的结果集来检索行的。仅合并来自单个表的索引扫描...
mysql 主从同步原理简析 在开始讲述原理的情况下,我们先来做个知识汇总, 究竟什么是主从,为什么要搞主从,可以怎么实现主从,mysql主从同步的原理 1、什么是主从 其实主...
mysql崩溃恢复流程 buffer pool是mysql内存结构中十分核心的一个组成,你可以先把它想象成一个黑盒子。 1、黑盒下的更新数据流程 当我们查询数据的时候,会先去b...
MySQL 多版本并发 一、多版本并发控制 我们知道,读未提交会造成脏读、幻读、不可重复读,读已提交会造成幻读、不可重复读,可重复读可能会有幻读,和串行化就不会有这些问...
mysql过滤复制 两种思路: 主库的binlog上实现(不推荐,尽量保证主库binlog完整) 从库的sql线程上实现 所以主从过滤复制尽量不用,要用的也仅仅...
引子:把所有数据都存放于一张表的弊端 表的组织结构复杂不清晰 浪费空间 扩展性极差 为了解决上述的问题,就需要用多张表来存放数据。 表与表的记录之间存在着三种关...
前言 在测试的时候为了测试大数据量的情况下项目的抗压能力我们通常要创造一些测试数据那么现在这个方法绝对好用 其中可能会有sql空间的报错可以自己尝试解决,这里做了分批插入,每次插入30万...
一、从宏观的角度分析MySQL 首先看一张经典图片(MySQL逻辑架构图) 上图的客户端可以直接理解为PHP、Java等。接下来,你会看到连接、线程处理。这一部分并不是MySQL所...
MySQL slave 延迟 外键检查和自增加锁 一、现象 延迟大,大事物。 表结构 无IO SQL THR...
MySQL的隐式转换 一、问题描述 show create table t1\G *************************** 1. row **...
语法格式:row_number() over(partition by 分组列 order by 排序列 desc) row_number() over()分组排序功能: 在使...
一、acid 特性 事务处理是一种对必须整批执行的 mysql 操作的管理机制,在事务过程中,除非整批操作全部正确执行,否则中间的任何一个操作出错,都会回滚 (rollback) 到最初的安...
前言 为了体现不加索引和添加索引的区别,需要使用百万级的数据,但是百万数据的表,如果使用一条条添加,特别繁琐又麻烦,这里使用存储过程快速添加数据,用时大概4个小时。 创建一个用户表...
我个人并不推荐在实际开发中使用存储过程,充满了各种的不方便,之所以写这东西,全在于学习,如果有高手看到我的内容有问题,可以随时指出或向我开炮。 需求: 在生产中常常出现计算两个时间差的业...