1.3 存储引擎特点上面我们介绍了什么是存储引擎,以及如何在建表时如何指定存储引擎,接下来我们就来介绍下来上面重点提到的三种存储引擎 InnoDB、MyISAM、Memory的特点。1.3.1 InnoDB1). 介绍InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在 MySQL 5.5 之后,InnoDB是默认的MySQL 存储引擎。2). 特点DM ......
324
0
0
2022-11-23
1.2 存储引擎介绍大家可能没有听说过存储引擎,但是一定听过引擎这个词,引擎就是发动机,是一个机器的核心组件。比如,对于舰载机、直升机、火箭来说,他们都有各自的引擎,是他们最为核心的组件。而我们在选择引擎的时候,需要在合适的场景,选择合适的存储引擎,就像在直升机上,我们不能选择舰载机的引擎一样。而对于存储引擎,也是一样,他是mysql数据库的核心,我们也需要 ......
344
0
0
2022-11-23
1. 存储引擎1.1 MySQL体系结构1). 连接层最上层是一些客户端和链接服务,包含本地sock 通信和大多数基于客户端/服务端工具实现的类似于TCP/IP的通信。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实现基于SSL的安全链接。服务器也会为安全接入的每个客户 ......
315
0
0
2022-11-23
来给大家区分下mysql复制表的两种方式。第一、只复制表结构到新表create table 新表 select * from 旧表 where 1=2或者create table 新表 like 旧表第二、复制表结构及数据到新表create table 新表 select * from 旧表另一种完整复制表的方法:CREATE TABLE targetTab ......
297
0
0
2022-11-20
一条慢查询会造成什么后果?年轻时,我一直觉得不就是返回数据会慢一些么,用户体验变差?其实远远不止,我经历过几次线上事故,有一次就是由一条SQL慢查询导致的。记得那是一条查询SQL,数据量万级时还保持在0.2秒内,随着某一段时间数据猛增,耗时一度达到了2-3秒!没有命中索引,导致全表扫描。explain 中extra显示:Using where; Using ......
313
0
0
2022-11-18
MyISAM是MySQL5.5版之前默认数据库引擎,也算是老一辈存储引擎代表,由早期的ISAM所改良。虽然性能极佳,但“锁”事过多,导致并发事务处理能力很差。没办法,我天生的结巴,还让我去辩论会??你不要强人“锁”男! 这也是后来InnoDB成功取代MyISAM的重要原因之一。被取代后的MyISAM也迅速淡出开发者视野。 唉,毕竟,第二永远也不会被记住,除非 ......
345
0
0
2022-11-18
今天的主人公是我们公司同事侨总,传说中手上有10个比特币的男人。自从比特币大涨以来,养成了几个小爱好:周末听戏坐包厢,骑马酒吧滑雪场。  这不,前两天侨总又双叒叕出来体验面试了,晚上请我烧烤时跟我聊了聊这次有趣的面试经历,真是意犹未尽,趁他回味之余我又吃了十几串儿腰子和羊肉~ 嗯,真香!  对不住,跑题了。。人到中年嘛,保温杯里泡枸杞之余总会。。。  来不及 ......
337
0
0
2022-11-18
运算符:!= 和 <>在MySQL中!= 和 <> 的功能一致,在sql92规范中建议是:!=,新的规范中建议为: <>下面查询username为"陈哈哈"以外的用户,以下两条语句的作用一样。SELECT * FROM t_user WHERE username != "陈哈哈"; SELECT * FROM t_use ......
456
0
0
2022-11-18
国庆过后我们客户领导换了,这哥们儿好像特别喜欢看各类统计、报告(过眼瘾?),加了二十多个统计数据报告的需求,就好像报告多就会显得很牛逼一样🙃🙃~ (上线后据我观察操作日志,发现上线后再也没人看报告。。西内!!🔨🔨) 搞得我最近一直在写定时任务,之前我一直是用SpringTask做定时任务的,还得来回调数据库浪费资源效率。机缘巧合让我发现了MySQL的EVEN ......
375
0
0
2022-11-17
CHAR和VARCHAR是MySQL中两种最重要的字符串类型,两者的原理和区别也是面试中高频问题,如果是你,会从哪几个角度去回答这个问题呢?今天,我给大家总结了一下相关知识点,让我们一起回顾一下吧。 ----- 本文描述和假设使用的存储引擎以Innodb和MyISAM为准目录一、CHAR和VARCHAR有哪些区别1、固定长度 & 可变长度2、存储方式 ......
370
0
0
2022-11-17
提到MySQL的Insert语句,你肯定不陌生,或许已经张口就来:不就是insert into table values(xxx,xxx,xxx)嘛!没错,但在实战中,根据不同的需求场景,插入操作在语法、执行方式上的用法多种多样。 今天,我来给小伙伴们从这两方面分享一下搬砖心得,如果你有疑问或好的想法,记得在评论区给我留言,我会在搬砖之余和大家一起吃瓜喔~目 ......
349
0
0
2022-11-17
自MySQL5.5版本起,主流的索引结构转为B+树。B+树的节点存储索引顺序是从左向右存储,在检索匹配的时候也要满足自左向右匹配。目录一、最左匹配原则的原理二、违背最左原则导致索引失效的情况三、查询优化器偷偷干了哪些事儿四、需要你mark的知识点1、如何通过有序索引排序,避免冗余执行order by2、like 语句的索引问题3、不要在列上进行运算4、索引不 ......
389
0
0
2022-11-17
事务回滚机制其实,讨论MySQL的事务回滚机制,也就是在说MySQL的事务原子性是如何实现的(关于事务之前文章中有过简单介绍)。所谓原子性,就是指一个事务是一个不可分割的工作单位,其中的操作要么都做,要么都不做;如果事务中的一个sql语句执行失败,则已执行的语句必须回滚,数据库会退回到事务前的状态。我们可以这么理解,就是说如果事务失败了,那么它对我们的数据库 ......
373
0
0
2022-11-16
MySQL8.0允许外部访问一、前置条件:按照https://blog.csdn.net/h996666/article/details/80917268安装完MySQL之后。二、开始修改配置:1,登进MySQL之后,2,输入以下语句,进入mysql库:use mysql 3,更新域属性,’%’表示允许外部访问:update user set host=' ......
416
0
0
2022-11-15
基于mysql分布式悲观锁原理悲观锁在库存服务中的应用:在这个过程中我们是使用gorm来完成mysql的分布式悲观锁的核心的代码在这里,该方法就能完成悲观锁了更多关于gorm的学习DB.Clauses(clause.Locking{Strength: "UPDATE"}) 完整代码://Sell 扣减库存,涉及事务逻辑,执行的逻辑必须全部成功或者全部失败并 ......
625
0
0
2022-11-14