![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
文章平均质量分 76
峰子2012
前阿里巴巴、新浪 资深研发工程师,
每天一篇文章,喜欢的同学给一个关注,一起学习一起拿高薪
展开
-
面试了无数公司,我总结了这些 Mysql 面试题(内附答案)
面试了无数公司,我总结了这些 Mysql 面试题(内附答案)原创 2022-03-23 11:21:35 · 247 阅读 · 0 评论 -
Redis缓存和MySQL数据一致性的问题,你是如何高效的去解决的
在高并发的业务场景下,数据库的性能瓶颈往往都是用户并发访问过大。所以,一般都使用redis做一个缓冲操作,让请求先访问到redis,而不是直接去访问MySQL等数据库。从而减少网络请求的延迟响应。数据为什么会不一致这样的问题主要是在并发读写访问的时候,缓存和数据相互交叉执行。一、单库情况下同一时刻发生了并发读写请求,例如为A(写) B (读)2个请求 A请求发送一个写操作到服务端,第一步会淘汰cache,然后因为各种原因卡主了,不在执行后面业务(例:大量的业务操作、调用原创 2022-01-26 10:39:58 · 186 阅读 · 0 评论 -
SQL语句中 LEFT JOIN后用 ON 还是 WHERE,有什么区别 ?
SQL语句中 LEFT JOIN后用 ON 还是 WHERE,有什么区别 ?原创 2022-01-26 10:20:53 · 399 阅读 · 2 评论 -
MySQL数据太大,你们是如何拆分数据的?
在中大型项目中,一旦遇到数据量比较大,小伙伴就应该都知道要对数据进行拆分了,可是要如何拆分才是比较好呢!下面结合图文,思路,与大家聊聊设计与拆分方案。我们都知道拆分有分为垂直拆分与水平拆分。垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。如下图,独立的拆分出订单库和用户库。水平拆分的概念,是同一个业务数据量大之后,进行水平拆分。上图中订单数据达到了4000万,我们也知道mysql单表存储量推荐是百万级,如果不进行处理,mysql单表数据太大原创 2022-01-24 11:45:52 · 3309 阅读 · 0 评论 -
MySQL模糊查询,你还在用 like+% 吗?
前言我们都知道 InnoDB 在模糊查询数据时使用 "%xx" 会导致索引失效,但有时需求就是如此,类似这样的需求还有很多,例如,搜索引擎需要根基用户数据的关键字进行全文查找,电子商务网站需要根据用户的查询条件,在可能需要在商品的详细介绍中进行查找,这些都不是B+树索引能很好完成的工作。通过数值比较,范围过滤等就可以完成绝大多数我们需要的查询了。但是,如果希望通过关键字的匹配来进行查询过滤,那么就需要基于相似度的查询,而不是原来的精确数值比较,全文索引就是为这种场景设计的。全文索引(Full-T转载 2022-01-21 10:25:35 · 141 阅读 · 0 评论 -
Mysql 并发事务如何处理?
为了提高事务的吞吐量,MySQL 可以处理并发执行的多个事务,但是如果并发执行多个插入新记录的 SQL 语句,可能会导致主键的不连续。如下图所示,事务 1 向数据库中插入 id = 10 的记录,事务 2 向数据库中插入 id = 11 和 id = 12 的两条记录:图 4 - 并发事务的执行不过如果在最后事务 1 由于插入的记录发生了唯一键冲突导致了回滚,而事务 2 没有发生错误而正常提交,在这时我们会发现当前表中的主键出现了不连续的现象,后续新插入的数据也不再会使用 10 作为记录的主键。no原创 2021-09-30 11:25:50 · 505 阅读 · 0 评论 -
大厂面试 Mysql数据库相关面试题总结
1、列举常见的关系型数据库和非关系型都有那些?关系型数据库:Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL非关系型数据库:NoSql、Cloudant、MongoDb、redis、HBase两种数据库之间的区别:关系型数据库:关系型数据库的特性1、关系型数据库,是指采用了关系模型来组织数据的数据库;2、关系型数据库的最大特点就是事务的一致性;3、简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间原创 2021-08-23 10:23:09 · 430 阅读 · 0 评论 -
连接MySQL出现Authentication plugin ‘caching_sha2_password‘ cannot be loaded
刚安装好MySQL,有一个默认密码,比较复杂,我们可以先使用这个复杂密码登录,登录成功后使用命令[alter user ‘root’@‘localhost’ identified by ‘root’;]修改密码即可。 我这里修改后的密码是root,接着我想用Navi...原创 2021-08-20 17:45:01 · 592 阅读 · 0 评论 -
MySQL数据库面试题
Java面试总结(2021优化版)已发布在个人微信公众号【技术人成长之路】,优化版首先修正了读者反馈的部分答案存在的错误,同时根据最新面试总结,删除了低频问题,添加了一些常见面试题,对文章进行了精简优化,欢迎大家关注!???????? 【技术人成长之路】,助力技术人成长!更多精彩文章第...转载 2021-08-18 17:05:27 · 521 阅读 · 0 评论