数据库面试题总结自用

#数据库##MySQL##我的求职思考#
MySQL:
        1.MySQL的索引原理和数据结构能介绍下吗?
        2.B+树和B树的区别是什么?
        3.MySQL聚簇索引和非聚簇索引的区别?
        4.使用MySQL索引都有什么原则?
        5.不同的存储引擎是如何进行实际存储的?
        6.MySQL的组合索引的结构是什么样的?
        7.MySQL索引如何进行优化?
        8.事务的四个特点是什么?他们的实现原理是什么?
        9.MySQL的redolog、undolog、binlog分别有什么作用?
        10.什么是二阶段提交,如何保证宕机时数据的一致性?
        11.MVCC是如何是如何实现多版本并发控制的?如何解决读写冲突?
        12.MySQL中的幻读是什么?如何解决幻读问题?
        13.delete drop truncate的区别是什么?
Redis:
        1.详细的说说Redis的数据类型?
        2.说说Redis的持久化策略?
        3.如何利用Redis实现一个分布式锁?
        4.说说你对Redis的了解
        5.说说缓存穿透、击穿、雪崩的区别
        6.Redis如何与数据库保持双写一致性
        7.请你说说Redis数据类型中的zset,它和set有什么区别?底层是怎么实现的?
        8.说说Redis的单线程架构
        9.如何实现Redis高可用
        10.说说Redis的主从同步机制
        11.说说Redis的缓存淘汰策略
全部评论
大部分公司考的都是MySQL吗?
1 回复 分享
发布于 2023-03-16 20:54 广东
哪些大厂面试主要以数据库为主呢
点赞 回复 分享
发布于 2023-03-16 20:30 上海

相关推荐

09-10 15:17
已编辑
北京大学 产品经理
被面试官鉴定为和大一刚学java的水平差不多,彻底赢了这下,赢完了哈哈,出走半身回来还是大一1.springboot从一个请求进来到被处理的流程是怎么样的呢2.tomcat线程池3.提交一个jar包是怎么在tomcat跑起来的,详细展开讲讲4.一个请求进来,在springboot中要经过两个映射的过程,详细展开讲讲这两个映射过程,比如说uri是怎么知道被哪个处理器处理的5.你说handlermapping,那这个mapping到底是咋做的呢,详细讲讲6.@autwied @resource这些注解是在程序中通过什么样的方式被springboot发现呢7.@autwied注解原理,它是怎么取到对象的,从源码的角度讲讲8.@autwied通过构造方法注入该怎么注入呢,会不会有循环依赖的问题,怎么解决呢详细讲讲9.dispatcherServlet发生了什么过程,展开讲讲10.你对servlet有多少了解呢,这个也说说了解11.你写代码的时候 import java.util和import自己定义的类,中间发生了什么过程详细展开讲讲12.假设有两个除了版本不一样其他都一样的类,一个类版本是1.7,一个类版本是1.8,类加载器会加载哪个呢13.讲讲双亲委派机制,为什么有这东西14.除了自定义类加载器,我想要指定加载1.7还能怎么做呢15.你写了一个maven工程,很多个代码文件,每个代码文件都import了很多,那这些import的东西是什么时候加载呢,一次加载还是怎么样16.static 变量,构造方法,static代码块的加载顺序是怎么样17.我定义一个static变量,是什么时候被赋值的呢,定义一个static final变量,又是什么时候被赋值的呢,定义一个int变量但是不赋值,那值是多少呢18.wait notify sleep19.sleep和wait有啥区别,为什么20.notify能不能唤醒sleep,为什么21.notifyall能不能唤醒本线程,为什么22.sleep还占用cpu资源吗,为什么23.wait还占用cpu资源吗,为什么24.join是干什么,是怎么做到这个效果的呢,从原理角度讲讲25.start和run区别26.手撕一个生产者消费者模型27.while (count == 0/size) {lock.wait}count ++/--lock.notifyall这种写法是不合适的,请优化(example:为什么不能变成while (count == 0/size) {lock.notifyalllock.wait}count ++/--lock.notifyall呢)28.写的这个代码子线程会结束吗,不会结束的话线程是什么状态呢29.守护线程是什么30.加载jdbc驱动的时候class.forname(com.mysql.cj)发生了什么过程呢31.如果class.forname代码写了两次会发生什么呢
代码不跑我跑_秋招版:全是springboot源码拷打啊,真是唐到我了
你觉得今年秋招难吗
点赞 评论 收藏
分享
8.21二面 依旧很多大模型相关问题1. 你理解 ThreadLocal 的考点是什么?2. 如何避免线程本地变量导致的内存泄漏?3. try/finally 里 ThreadLocal 要不要手动 remove 掉?4. 本地缓存为什么设置 5 秒?为什么不是别的值?5. 你们是怎么做压测验证的?6. 遇到大促、流量峰值时,如果写操作集中发生,缓存和 DB 一致性如何保证?7. 你在项目里具体负责哪些模块?(缓存 / 对账 / CRUD 等)8. 你现在做的 SDK 具体解决什么问题?9. 老系统和新系统为什么要做迁移?老系统有什么问题?10. 新架构是谁主导设计的?为什么是单体架构?11. 你总结一下你做的三个核心点?12. 你还要负责老逻辑迁移到新系统吗?13. 对大模型(AI/LLM)方面的理解:14. 你怎么看大模型对工作的影响?15. 在你们内容审核业务里,AI 是怎么应用的?16. 你平时在实习里可以使用例如 ChatGPT、Claude、Copilot 之类的工具吗?17. 你个人平时常用哪些模型?(比如 GPT、Claude、通义千问、Gemini)18. 你怎么看像 AI Agent、RAG、MCP 等这些最近很火的概念?19. 你自己有没有实践过 Prompts 的设计?能举一个案例吗?20. 你会怎么验证 / 监控 Prompt 的正确性?如果模型输出结果和预期格式不一致,你们怎么处理?21. 你们上线前会不会评估 Prompt 的效果?怎么测试?22. 你对未来职业的规划是什么?想在技术还是管理上走?23. 你更看重深度还是广度?打算怎么平衡?24. 你对杭州的工作地点接受吗?
发面经攒人品
点赞 评论 收藏
分享
评论
4
106
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务