Java面试题
文章平均质量分 81
晴天小哥哥
追求卓越, 成功就会在不经意间追上你
展开
-
MySQL面试之一条SQL是如何执行的
一 MySQL 基础架构分析1.1 MySQL 基本架构概览下图是 MySQL 的一个简要架构图,从下图你可以很清晰的看到用户的 SQL 语句在 MySQL 内部是如何执行的。先简单介绍一下下图涉及的一些组件的基本作用帮助大家理解这幅图,在 1.2 节中会详细介绍到这些组件的作用。**连接器:**身份认证和权限相关(登录 MySQL 的时候)。 **查询缓存:**执行查询语句的时候,会先查询缓存(MySQL 8.0 版本后移除,因为这个功能不太实用)。 分析器:没有命中缓存的话,SQL.原创 2021-09-09 17:10:40 · 290 阅读 · 0 评论 -
MySQL面试之三大日志详解
前言MySQL日志 主要包括错误日志、查询日志、慢查询日志、事务日志、二进制日志几大类。其中,比较重要的还要属二进制日志binlog(归档日志)和事务日志redo log(重做日志)和undo log(回滚日志)。今天就来聊聊redo log(重做日志)、binlog(归档日志)、两阶段提交、undo log(回滚日志)。redo logredo log(重做日志)是InnoDB存储引擎独有的,它让MySQL拥有了崩溃恢复能力。比如MySQL实例挂了或宕机了,重启时,...原创 2021-09-09 15:26:42 · 468 阅读 · 0 评论 -
MySQL面试题之InnoDB对MVCC的实现
一致性非锁定读和锁定读一致性非锁定读对于一致性非锁定读(Consistent Nonlocking Reads)的实现,通常做法是加一个版本号或者时间戳字段,在更新数据的同时版本号 + 1 或者更新时间戳。查询时,将当前可见的版本号与对应记录的版本号进行比对,如果记录的版本小于可见版本,则表示该记录可见在InnoDB存储引擎中,多版本控制 (multi versioning)就是对非锁定读的实现。如果读取的行正在执行DELETE或UPDATE操作,这时读取操作不会去等待行上锁的...原创 2021-09-09 14:36:39 · 507 阅读 · 0 评论 -
mysql面试题《六》覆盖索引与回表
前言:select id,name where name='shenjian'select id,name,sexwhere name='shenjian'多查询了一个属性,为何检索过程完全不同?什么是回表查询? 什么是索引覆盖? 如何实现索引覆盖? 哪些场景,可以利用索引覆盖来优化SQL?这些,这是今天要分享的内容。画外音:本文试验基于MySQL5.6-InnoDB...转载 2020-05-03 22:10:27 · 1093 阅读 · 1 评论 -
ActiveMQ 面试题(长期更新)
什么是activemqactiveMQ是一种开源的,实现了JMS1.1规范的,面向消息(MOM)的中间件,为应用程序提供高效的、可扩展的、稳定的和安全的企业级消息通信。activemq的作用以及原理Activemq的作用就是系统之间进行通信。当然可以使用其他方式进行系统间通信,如果使用Activemq的话可以对系统之间的调用进行解耦,实现系统间的异步通信。原理就是生产者生产消...原创 2019-05-02 16:38:51 · 39643 阅读 · 5 评论 -
MySQL面试题(二)之数据类型,引擎,事务等
上一篇文章介绍了关于MySQL数据库基础题的一部分内容,很多朋友表示看着不过瘾,因此本文将更全面的把MySQL数据库基础题一并介绍完。除了基础题部分,小编计划收集整理的MySQL面试题还包括如下知识点或题型:MySQL高性能索引SQL语句MySQL查询优化MySQL高扩展高可用MySQL安全性为了避免收藏不看,让大家更有耐心看下去,印象更深刻些,小编将分五次分别发布这些内容,加上本文一共6篇,欢迎...原创 2018-04-25 16:39:40 · 797 阅读 · 0 评论 -
MySQL面试题(三)之MySQL高性能索引
上一篇文章介绍了关于MySQL数据库基础题,首先,谢谢大家的持续关注,您的关注是小编最大的动力。本文将介绍MySQL高性能索引。本文篇幅稍长,小编鼓励大家坚持看完,一定会有所收获。一 . 简单描述MySQL中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响?知识点分析此真题主要考察的是MySQL索引的基础和类型,由此延伸出的知识点还包括如下内容:MySQL索引的创建原则MySQL索...原创 2018-04-25 18:54:18 · 1950 阅读 · 0 评论 -
MySQL面试题(四)
上一篇文章介绍了MySQL高性能索引,本文将介绍MySQL的SQL语句编写。首先看一道真题有A(id,sex,par,c1,c2),B(id,age,c1,c2)两张表,其中A.id与B.id关联,现在要求写出一条SQL语句,将B中age>50的记录的c1,c2更新到A表中同一记录中的c1,c2字段中考点分析这道题主要考察的是MySQL的关联UPDATE语句延伸考点:MySQL的关联查询语句...原创 2018-04-27 14:24:08 · 700 阅读 · 0 评论 -
MySQL面试题(五)SQL 优化
上一篇文章介绍了MySQL SQL语句编写考题,本文将介绍MySQL的查询优化考题。首先看一道真题请简述项目中优化SQL语句执行效率的方法,从哪些方面,SQL语句性能如何分析?考点分析:这道题主要考察的是查找分析SQL语句查询速度慢的方法延伸考点:优化查询过程中的数据访问优化长难的查询语句优化特定类型的查询语句如何查找查询速度慢的原因记录慢查询日志分析查询日志,不要直接打开慢查询日志进行分析,这样...原创 2018-04-27 14:37:09 · 608 阅读 · 0 评论 -
MySQL面试题(六)数据库的分库分表原理详解
上一篇文章介绍了MySQL的查询优化考题,本文将介绍MySQL的高可扩展和高可用。首先看一道真题简述MySQL分表操作和分区操作的工作原理,分别说说分区和分表的使用场景和各自优缺点。考点分析分区表的原理分库分表的原理延伸:MySQL的复制原理及负载均衡分区表的工作原理对用户而言,分区表是一个独立的逻辑表,但是底层MySQL将其分成了多个物理子表,这对用户来说是透明的,每一个分区表都会使用一个独立的...原创 2018-04-27 17:38:25 · 12051 阅读 · 0 评论 -
MySQL面试题(一)之 数据类型详解
问题1:char、varchar的区别是什么?答:varchar是变长而char的长度是固定的。提示:如果你的内容是固定大小的,你会得到更好的性能。问题2: TRUNCATE和DELETE的区别是什么?答:DELETE命令从一个表中删除某一行,或多行,TRUNCATE命令永久地从表中删除每一行。问题3:什么是触发器,MySQL中都有哪些触发器?答:触发器是指一段代码,当触发某个事件时,自动执行这些...原创 2018-04-25 10:21:59 · 735 阅读 · 0 评论 -
2022JAVA面试题附答案(长期更新)
该博客囊括了Java面试中95%的面试题,不包含算法题。如有遗漏或错误,请立刻联系我,十分感谢。原创 2018-05-17 22:53:57 · 148284 阅读 · 40 评论