• Java面经丨后端3年经验社招面试题目分享(参考答案)


    Mysql索引在什么情况下会失效

    • 查询条件包含or,可能导致索引失效
    • 如何字段类型是字符串,where时一定用引号括起来,否则索引失效
    • like通配符可能导致索引失效。
    • 联合索引,查询时的条件列不是联合索引中的第一个列,索引失效。
    • 在索引列上使用mysql的内置函数,索引失效。
    • 对索引列运算(如,+、-、*、/),索引失效。
    • 索引字段上使用(!= 或者 < >,not in)时,可能会导致索引失效。
    • 索引字段上使用is null, is not null,可能导致索引失效。
    • 左连接查询或者右连接查询查询关联的字段编码格式不一样,可能导致索引失效。
    • mysql估计使用全表扫描要比使用索引快,则不使用索引。

    MySql的存储引擎InnoDB与MyISAM的区别

    • InnoDB支持事务,MyISAM不支持事务

    • InnoDB支持外键,MyISAM不支持外键

    • InnoDB 支持 MVCC(多版本并发控制),MyISAM 不支持

    • select count(*) from table时,MyISAM更快,因为它有一个变量保存了整个表的总行数,可以直接读取,InnoDB就需要全表扫描。

    • Innodb不支持全文索引,而MyISAM支持全文索引(5.7以后的InnoDB也支持全文索引)

    • InnoDB支持表、行级锁,而MyISAM支持表级锁。

    • InnoDB表必须有主键,而MyISAM可以没有主键

    • Innodb表需要更多的内存和存储,而MyISAM可被压缩,存储空间较小。

    • Innodb按主键大小有序插入,MyISAM记录插入顺序是,按记录插入顺序保存。

    • InnoDB 存储引擎提供了具有提交、回滚、崩溃恢复能力的事务安全,与 MyISAM 比 InnoDB 写的效率差一些,并且会占用更多的磁盘空间以保留数据和索引

    • Mysql在项目中的优化场景,慢查询解决等

    • Mysql有什么索引,索引模型是什么

    • B-树与B+树的区别?为什么不用红黑树

    • Mysql主从同步怎么做

    • 乐观锁与悲观锁的区别?

    • 聊聊binlog日志

    • redis 持久化有哪几种方式,怎么选?

    • redis 主从同步是怎样的过程?

    • redis 的 zset 怎么实现的?

    • Redis 过期策略和内存淘汰策略

    • Hashmap实现原理

    • select 和 epoll的区别

    • http与https的区别,https的原理,如何加密的?

    • Raft算法原理

    • 消息中间件如何做到高可用

    • 消息队列怎么保证不丢消息的

    • 聊聊Redis的哨兵机制

    • 算法题:无重复字符的最长子串

    学习更多JAVA知识与技巧,关注与私信博主(888)!

    热爱学习和渴望进阶的小伙伴,各种JAVA学习路线、笔记、面试题,免费分享!

  • 相关阅读:
    vision transformer 剪枝论文汇总
    Python邮件发送程序代码
    集合框架----源码解读Vector篇
    云原生周刊:Helm Charts 深入探究 | 2024.3.11
    Java IO包中字符流Piped和CharArray简介说明
    【推荐收藏】这8个常用缺失值填充技巧一定要掌握
    消息订阅与发布pubsub-js的使用与案例
    快来了解一下5个超实用的WPS表格操作技巧!
    [SDR] GNU Radio 系列教程(十五)—— GNU Radio GFSK 模块
    mmdetection使用wandb查看训练日志
  • 原文地址:https://blog.csdn.net/weixin_45985053/article/details/126254608