mysql
Java架构师联盟
这个作者很懒,什么都没留下…
展开
-
字节面试数据结构与算法:B+树的删除和插入,不够详细你打我
之前在讲解mysql底层算法架构的时候,我提到了一个点:树,这个大学的时候让我们只有恨没有爱的课程中的一员,但是,最近的一段时间里,算法和数据结构成为面试过程汇总弄个地考虑重点,之前的时候图解过红黑树,也以mysql为例,将B+树的相关原理进行了讲解,想要重新回顾一下的朋友,可以去公众号:Java架构师联盟查看今天我们来看一下B+树的应用,图解哦,开始之前先来回归一下一些基础的东西使用场景文件系统和数据库系统中常用的B/B+ 树,他通过对每个节点存储个数的扩展,使得对连续的数据能够进行较快的定位和访问原创 2020-11-23 19:29:20 · 368 阅读 · 2 评论 -
字节跳动内部授课课件:附图讲解MySQL底层索引结构算法实现
本身也想写点关于MySQL基础的东西,但是,网上一搜,各大论坛真的有好多,正好最近好多朋友在面试字节的时候,被问到底层算法的东西,然后被询问了一波,那我们就来看一下mysql底层所能涉及的算法,都研究明白了之后,是不是就不怕面试官扩展开来问mysql了呀文章首发个人公众号:Java架构师联盟,每日更新技术好文运行流程关于mysql的内部运行流程,这里不做过多的解释,通过下面这张图,我给大家讲解一下注意:不同的存储引擎,数据文件和索引文件存放的位置是不同的,因此有了分类:聚簇索引:数据和文件放在一原创 2020-11-23 19:18:13 · 284 阅读 · 0 评论 -
数据库工程师整理最常见mysql面试题,每一道都是工作面试经典
1、如何启动MySql服务 /etc/init.d/mysqld start service mysqld startCentos 7.x 系统sysctl start mysqld2、检测端口是否运行 lsof -i :3306 netstat -lntup |grep 33063、设置或修改MySql密码设置密码mysql -uroot -ppassword -e "set passowrd for root = passowrd('passowrd')"mysqlad原创 2020-11-22 20:20:02 · 751 阅读 · 2 评论 -
阿里P8传授的80K+星的MySQL笔记助我修行,不吃透感觉都对不起他
MySQL 是最流行的关系型数据库之一,广泛的应用在各个领域。下面这些问题对于程序员的你来说应该很常见,来看看你面对这些问题是否会胆怯?MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化? 为什么索引能提高查询速度? MySQL连接池的连接数说爆就爆了? 关心过业务系统里面的sql耗时吗?统计过慢查询吗?对慢查询都怎么优化过?最近小编在阿里P7大佬手里扒到这份MySQL高级调优笔记,竟然有80K+星,今天就拿出来分享给大家,本笔记主要讲解了MySQL中的视图/存储过程原创 2020-09-01 15:23:35 · 205 阅读 · 0 评论 -
mysql执行计划,就这样5000+字,被解释的清清楚楚
上一次我们 通过实践,解释了mysql主从复制的原理和实践,今天,我们来看一下mysql的执行计划在企业的应用场景中,为了知道优化SQL语句的执行,需要查看SQL语句的具体执行过程,以加快SQL语句的执行效率。可以使用explain+SQL语句来模拟优化器执行SQL查询语句,从而知道mysql是如何处理sql语句的。1、执行计划中包含的信息ColumnMeaningidThe SELECT identifierselect_typeThe SELECT typetableThe tab.原创 2020-08-29 15:20:11 · 154 阅读 · 0 评论 -
mysql主从复制,从原理讲到安装配置,全干货
0、为什么需要主从复制?1、在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读从库也可以保证业务的正常运作。2、做数据的热备3、架构的扩展。业务量越来越大,I/O访问频率过高,单机无法满足,此时做多库的存储,降低磁盘I/O访问的频率,提高单个机器的I/O性能。1、什么是mysql的主从复制?MySQL 主从复制是指数据可以从一个MySQL数据库服务原创 2020-08-27 22:08:32 · 120 阅读 · 0 评论 -
2020-08-24
大多数框架,都支持插件,用户可通过编写插件来自行扩展功能,Mybatis也不例外。我们从插件配置、插件编写、插件运行原理、插件注册与执行拦截的时机、初始化插件、分页插件的原理等六个方面展开阐述。1. 插件配置** **Mybatis的插件配置在configuration内部,初始化时,会读取这些插件,保存于Configuration对象的InterceptorChain中。 <?xml version="1.0" encoding="UTF-8"?>...原创 2020-08-24 21:30:46 · 112 阅读 · 0 评论 -
纯干货,源码6步曲,带你解析完整的ThreadPoolExecutor
ThreadPoolExecutor源码解析今天为了给一个朋友做一份文档,从源码层级解析一下ThreadPoolExecutor。然后就直接在源码上写备注的形式解析,看这篇文章的朋友,就和看源码一样,一步步的跟着向下执行的看就好1、常用变量的解释// 1. `ctl`,可以看做一个int类型的数字,高3位表示线程池状态,低29位表示worker数量private final AtomicInteger ctl = new AtomicInteger(ctlOf(RUNNING, 0));/原创 2020-08-12 02:18:46 · 161 阅读 · 0 评论 -
你可能从未想过的消息队列面试8大坑,一个就够你受的
一、为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么优点和缺点?其实面试官主要是想看看: 第一,你知不知道你们系统里为什么要用消息队列这个东西?不少候选人,说自己项目里用了 Redis、MQ,但是其实他并不知道自己为什么要用这个东西。其实说白了,就是为了用而用,或者是别人设计的架构,他从头到尾都没思考过。没有对自己的架构问过为什么的人,一定是平时没有思考的人,面试官对这类候选人印象通常很不好。因为面试官担心你进了团队之后只会木原创 2020-08-11 21:01:04 · 290 阅读 · 0 评论 -
熬夜冠军,硬肝三天,最全MySQL性能优化整理完成,不收藏会后悔
MySQL“被动”性能优化汇总!年少不知优化苦,遇坑方知优化难。 ——村口王大爷本文内容导图如下:既然都说了性能优化的内容,那性能优化就应该一把梭子吗?还是要符合一些规范和原则呢?所以,在开始之前(MySQL 优化),咱们先来聊聊性能优化的一些原则。性能优化原则和分类性能优化一般可以分为:主动优化 被动优化所谓的主动优化是指不需要外力的推动而自发进行的一种行为,比如当服务没有明显的卡顿、宕机或者硬件指标异常的情况下,自我出发去优化的行为,就可以称之为主动优化。原创 2020-08-11 02:21:44 · 139 阅读 · 0 评论 -
源码配置解析:SpringBoot配置文件加密Jasypt
前言数据库密码直接明文写在配置中,对安全来说,是一个很大的挑战。一旦密码泄漏,将会带来很大的安全隐患。尤其在一些企业对安全性要求很高,因此我们就考虑如何对密码进行加密。本文着重介绍Jasypt对SpringBoot配置文件加密。引入maven <dependency> <groupId>com.github.ulisesbocchio</groupId> <artifactId&g.原创 2020-08-10 15:15:17 · 434 阅读 · 0 评论 -
想短时间通过java面试?这份阿里P5-P8面试知识点你不来看看?
话不多说,直接开始!这份PDF面经知识点包括了五个大部分,26个知识点:Java部分:Java基础,集合,并发,多线程,JVM,设计模式 数据结构算法:Java算法,数据结构 开源框架部分:Spring,MyBatis,MVC,netty,tomcat 分布式部分:架构设计,Redis缓存,Zookeeper,kafka,RabbitMQ,负载均衡等 微服务部分:SpringBoot,SpringCloud,Dubbo,Docker一、java知识部分现在面试对很多原理基础都特别注重,..原创 2020-08-07 22:12:43 · 283 阅读 · 0 评论 -
把这几道面试题研究明白,金九银十前最后一个月,足以
最近是不是面试的越来越多啊,或者说备战金九银十呢?最近也有很多小伙伴在后台和我联系,说面试的时候遇到的一些问题,其实面试多了你会发现一个规律,如果一个公司你一面过的很顺利,后面不管三面四面还是五面,都会比较顺利。因为大家的提问方式,角度都很类似,很多时候都是在跟不同的面试官说同样的话。多数的公司总体上面试都是以自我介绍+项目介绍+项目细节/难点提问+基础知识点考核+算法题这个流程下来的。有些公司可能还会问几个实际的场景类的问题,这个环节阿里是必问的,这种问题通常是没有正确答案的,就看个人的理解,个人的原创 2020-08-07 01:28:46 · 174 阅读 · 0 评论 -
阿里、字节等大佬重磅出尽,整理面试题助力金九银十,还不收藏
一、为什么要整理面试题?现在JDK都14了,但是很多人可能连JDK 8 新特性都没玩过,那面试的时候如何高效地和面试官瞎扯蛋呢?那自然是需要题库(题库)啦! 考虑到这一点,小编决定,将市面上设计比较多的第一梯度:计算机组成原理、操作系统原理、网络通信原理、数据结构和算法; 第二梯度:Java SE基础、JavaWeb相关、Java 工具(Maven/git等)、JDK 工具、Java 各版本新特性、JVM 相关如内存模型和、GC 算法、JVM 性能调优、设计模式; 第三梯度:Spring、Spr原创 2020-08-06 17:27:43 · 172 阅读 · 0 评论 -
面试必问MySQL:执行流程、树、索引、优化、数据结构一网打尽
SQL优化背景开发项目上线初期,由于业务数据量相对较少,一些SQL的执行效率对程序运行效率的影响不太明显,而开发和运维人员也无法判断SQL对程序的运行效率有多大,故很少针对SQL进行专门的优化,而随着时间的积累,业务数据量的增多,SQL的执行效率对程序的运行效率的影响逐渐增大,此时对SQL的优化就很有必要。SQL优化发生在业务量达到一定规模的时候目的是优化SQL的执行效率除了这些之外,sql的优化也是一个可以引申出来其他相当多的内容,不信,来看看MySQL 优化优化范围硬件资源.原创 2020-08-05 21:42:34 · 185 阅读 · 0 评论 -
面试官:这7张图要是都学会,我还问什么mysql调优(建议收藏)
前言MySQL 为关系型数据库(Relational Database Management System),一个关系型数据库由一个或数个表格组成, 表格一般包括以下:表头(header): 每一列的名称; 列(col): 具有相同数据类型的数据的集合; 行(row): 每一行用来描述某个人/物的具体信息; 值(value): 行的具体信息, 每个值必须与该列的数据类型相同; 键(key): 表中用来识别某个特定的人物的方法, 键的值在当前列中具有唯一性。但是就是这些简简单单的表格,却衍生原创 2020-06-13 16:46:16 · 506 阅读 · 0 评论 -
老大,我想获取MySQL插入数据的自增ID,该怎么弄?
mysql和oracle插入的时候有一个很大的区别是,oracle支持序列做id,mysql本身有一个列可以做自增长字段,mysql在插入一条数据后,如何能获得到这个自增id的值呢?方法一:是使用last_insert_idmysql> SELECT LAST_INSERT_ID();产生的ID 每次连接后保存在服务器中。这意味着函数向一个给定客户端返回的值是该客户端产生对影响AUTO_INCREMENT列的最新语句第一个 AUTO_INCREMENT值的。这个值不能被其它客户端影响,即.原创 2020-06-09 16:21:59 · 1470 阅读 · 0 评论 -
花费5分钟,白嫖mysql索引讲解,从此面试无忧,建议收藏
目录什么是索引为什么需要索引?B-Tree和B+TreeB-TreeB+Tree相对B树,B+树做索引的优势MyISAM索引和Innodb索引的区别索引类型索引的使用策略及优缺点使用索引不使用索引最左匹配原则优点缺点验证索引是否能够提升查询性能Mysql索引管理一、功能二、MySQL的索引分类三、 索引的两大类型hash与btree四 添加索引,必须遵循原则五、慢查询优化的基本步骤什么是索引索引在MySQL中也...原创 2020-05-30 15:35:30 · 352 阅读 · 0 评论 -
一个mysql优化就难住了?别怕,来看这张思维导图
前言:之前写过一篇mysql基础的思维导图的文章,感觉好像帮到了好多人,今天的,又整理一篇mysql调优的,希望能帮到大家最近,周围的同事离职的越来越多,身边的小伙伴好像也有动作了,找他聊聊。“咋了,你也要走?”小伙伴:”现在的工作太枯燥,缺少成就感,想换一个,有技术挑战的那种“”你现在不挺好么,leader对你也不错,也挺器重,感觉你前途一片光明“小伙伴:”这叫不错?这叫器重?我这种边缘项目,一没技术难度、二没流量、三没数据量,更别谈高并发了,天天做不完的需求,修不完的BUG,在.原创 2020-05-21 14:35:33 · 385 阅读 · 0 评论 -
谁再说mysql难学,我一张思维导图就扔过去,看完再说话
前言可能说起mysql,哪怕一个刚入门的小白都会跟我说,太低级了,这玩意有什么可整的,没啥意思,除了增删改查,索引,序列,还有什么呢?真当哥们是二B了呀我就哈哈一笑,小伙子,还是太年轻啊,来看这张图(平台原因,像素不够,需要高清图,私信“架构图”获取)怎么样,兄弟,密集恐惧症是不是犯了啊,还敢说mysql简单嘛?但是这样说的话是不是跟我的题目有点不一样啊,别着急,接着往下看增删改查什么的都不说,咱就以mysql的优化为例,来证明一下,为什么我说真的不难既然要说MySQ..原创 2020-05-12 03:06:11 · 8409 阅读 · 4 评论 -
DBA发自灵魂的呐喊:你不想一直做增删改查,那就从事务学起吧
提起数据库,大家不知道是不是和我一样,脑子里首发:增删改查索引序列,可能有人会说,这个low啊,这些玩意,闭着眼睛都能写出来,能不能来点有营养的啊,那好,来点营养丰富的,在正常的开发过程中,我们不能像DBA那样,对数据库那么的了解,但是你,对于数据库中的索引、事务、锁等知识,我觉得还是要知道一些的,毕竟为了自己以后的发展不是。那么今天就带大家聊一下事务的相关知识。为什么要有事务说到事务,不...原创 2020-04-26 23:05:59 · 304 阅读 · 0 评论 -
腾讯游戏工作室整理Netty原理架构解析,这可能是目前最透彻的
学习,知其然且知其所以然,所以在学习的时候不能仅仅是为了解决问题而学,在解决问题之余,也要考虑一下它的其他问题,本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,希望给大家在实际开发实践、学习开源项目方面提供参考。Netty 是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。JDK 原生 NIO 程序的问题JD...原创 2020-04-26 22:27:34 · 652 阅读 · 0 评论 -
阿里P8整理Mysql面试题答案,助你面试“脱颖而出”(建议收藏)
前言作为一名开发人员,每天英高都在和数据库进行着斗智斗勇,尤其是互联网行业,对MySQL的使用是比较多的。同样的,因为mysql的重要性以及普及性,在面试的时候一定是一个面试的重点或者说常问问题,说的在精确一点,对于实践以及底层的问题会是面试时区分你和竞争者的一个标准,那么,对于mysql都需要准备那些东西呢?看下面这张图相信看完这张图,有的老铁会在内心不断地diss,这怎么玩,...原创 2020-04-26 22:25:40 · 6396 阅读 · 11 评论