MySQL是世界上最流行的开源关系型数据库管理系统之一,在面试中经常被问及。以下是关键的MySQL面试知识点:1. 日期函数的区别:NOW()返回当前日期和时间,包括小时、分钟和秒;CURRENT_DATE()仅返回当前日期,不含时间。2. CHAR与VARCHAR的区别:CHAR是定长字符串类型,存储时会填充空格至指定长度,检索时去除尾随空格;VARCHAR是变长字符串类型,存储时只占用实际字符长度加1个字节,节省空间。3. 主键与唯一索引的区别:主键确保唯一性和完整性,不允许为空;唯一索引允许一个空值,但保证数据唯一。4. MySQL中的表类型包括MyISAM、Heap、Merge、InnoDB和ISAM。5. SQL生命周期包括连接数据库、发送SQL请求、解析SQL生成执行计划、执行查询读取数据、将结果发送客户端和关闭连接释放资源。6. 查看索引可使用SHOW INDEX FROM命令。7. B+树适合顺序和随机检索,空间利用率高,减少I/O次数。8. 数据库三大范式分别是第一范式、第二范式和第三范式。9. SQL查询优化建议避免全表扫描,为常用列创建索引,不使用IS NULL、OR和IN操作符。