数据库共127篇

面试题:MySQL 插入一条 SQL 语句,redo log 记录的是什么?

当 MySQL 执行一条插入(INSERT)SQL 语句时,redo log(重做日志)记录的是物理层面的页修改,而不是 SQL 语句本身。具体来说: 1. redo log 记录的内容 redo log 主要记录以下信息: 被修改的...
程序百科的头像-程序百科程序百科1年前
6310

面试题:如何在 MySQL 中实现读写分离?

在 MySQL 中实现读写分离主要是为了提高数据库的并发性能和资源利用率,特别是在高负载的应用环境中。 通过将读操作分配给从库(Slave),而写操作则发送到主库(Master),可以有效减轻单一数...
程序百科的头像-程序百科程序百科1年前
6213

面试题:MySQL 中的索引数量是否越多越好?为什么?

在 MySQL 中,索引数量并不是越多越好。虽然索引可以显著加速查询操作,但过多的索引会带来一系列负面影响,尤其是在写操作性能、存储开销、优化器效率和维护成本等方面。以下是具体原因和优化...
程序百科的头像-程序百科程序百科1年前
6113

面试题:MySQL 的乐观锁和悲观锁是什么?

在 MySQL 中,乐观锁和悲观锁是两种处理并发控制的方法,它们分别适用于不同的场景,并以不同的方式来保证数据的一致性和完整性。 悲观锁(Pessimistic Locking) 概念:悲观锁假设会发生并发冲...
程序百科的头像-程序百科程序百科1年前
5910

面试题:为什么不推荐在 MySQL 中直接存储图片、音频、视频等大容量内容?

在MySQL中直接存储图片、音频、视频等大容量内容(通常称为BLOB/BIG BLOB数据)通常不被推荐,主要原因包括以下几点: 1. 性能问题 存储效率:存储大容量文件(如图片、音频、视频)会大幅增加...
程序百科的头像-程序百科程序百科1年前
5915

面试题:MySQL 的索引下推是什么?

MySQL 的索引下推(Index Condition Pushdown,简称 ICP)是什么? 索引下推是 MySQL 5.6 引入的一种查询优化技术,其核心目的是减少回表查询的次数,从而提升查询效率。它通过将部分 WHER...
程序百科的头像-程序百科程序百科1年前
5914

面试题:MySQL 中的回表是什么?

MySQL 中的回表是什么? 核心概念 回表 是 MySQL 中一种与索引查询相关的性能现象,通常发生在使用 二级索引(非聚簇索引) 进行查询时。 定义:当通过二级索引查询数据时,由于...
程序百科的头像-程序百科程序百科1年前
5913

面试题:MySQL 的 Change Buffer 是什么?它有什么作用?

MySQL 的 Change Buffer 是什么?它有什么作用? 1. 定义与核心作用 Change Buffer 是 MySQL InnoDB 存储引擎 中的一个关键优化机制,主要用于缓存对 非唯一二级索引(如普...
程序百科的头像-程序百科程序百科1年前
587

面试题:在 MySQL 中建索引时需要注意哪些事项?

在 MySQL 中建索引时,需要注意以下关键事项,以确保索引的有效性和性能优化: 一、索引设计的核心原则 1. 明确目标查询 只为高频、关键查询建索引:索引应服务于 WHERE、JOIN、ORDER BY、GROU...
程序百科的头像-程序百科程序百科1年前
5814

面试题:什么是数据库的逻辑外键?数据库的物理外键和逻辑外键各有什么优缺点?

在数据库设计中,外键(Foreign Key)用于定义和加强两个表之间的关系。根据其实现方式的不同,可以将外键分为物理外键和逻辑外键。 物理外键 定义:物理外键指的是通过数据库管理系统(DBMS)明...
程序百科的头像-程序百科程序百科1年前
5713