MySQL事务隔离级别详解与 ENUM, CHAR/VARCHAR差异
版权申诉
162 浏览量
更新于2024-07-06
收藏 27KB DOCX 举报
在MySQL数据库面试中,面试官可能会关注以下几个关键知识点:
1. **事务隔离级别**:
MySQL的InnoDB存储引擎支持SQL标准定义的四种事务隔离级别:readuncommitted、readcommitted、repeatableread和serializable。- `readuncommitted`允许读取未提交的数据,可能导致脏读;`readcommitted`避免脏读,但可能出现不可重复读(即同一查询结果在多次执行时不同);`repeatableread`确保在同一会话内读取的结果不会因其他事务的更新而改变,但仍存在幻读问题;`serializable`是最严格的级别,保证了事务的串行化执行,避免了所有并发问题,但性能较低。
2. **ENUM类型**:
ENUM在MySQL中用于定义一组预定义的字符串值,创建表时指定这些选项。例如,`CREATE TABLE size (name ENUM('Small', 'Medium', 'Large'));`它限制了name字段只能取这些特定值。
3. **CHAR和VARCHAR的区别**:
CHAR类型具有固定的长度,存储时填充空格,检索时要去除尾部空格。VARCHAR则长度可变,节省空间但不保证填充。例如,`CREATE TABLE names (title CHAR(20) NOT NULL, description VARCHAR(100));`这里title需要固定20个字符,description则可变长。
4. **MySQL的存储引擎**:
MySQL支持多种存储引擎,如InnoDB(支持事务,适合复杂应用)、MyISAM(简单快速,无事务支持)、MEMORY(内存中存储,速度快但不持久)等。每个引擎有不同的锁定机制、索引策略和功能。
5. **TIMESTAMP类型**:
TIMESTAMP列默认在创建时用零值初始化,但当表中其他字段更新时,会自动更新为当前时间。UPDATECURRENT_TIMESTAMP用于这种自动更新的行为。
6. **主键与候选键**:
主键是表格的唯一标识符,一张表仅能有一个主键。候选键则是表中的一组属性,理论上可以被设置为主键,也可以作为外键引用,但不是必须的。
7. **MySQL性能分析**:
可以通过以下命令进行性能分析:`SHOW STATUS`查看系统状态变量如流量、命令计数等;`SHOW SESSION STATUS LIKE 'Select';`检查会话状态;`SHOW PROFILES`或`SHOW PROFILE`查看执行计划;`SHOW CREATE TABLE`检查表结构;以及监控排序、连接执行计划和存储引擎操作等。
8. **LIKE和REGEXP操作**:
LIKE用于基本模式匹配,如`SELECT * FROM users WHERE name LIKE '%John%'`;REGEXP(正则表达式)则提供了更复杂的模式匹配,如`SELECT * FROM users WHERE email REGEXP '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'`,适用于更精确的搜索和替换。但REGEXP操作通常比LIKE慢。
点击了解资源详情
161 浏览量
点击了解资源详情
287 浏览量
115 浏览量
2020-04-27 上传
114 浏览量
2021-10-25 上传
2022-07-06 上传
碎碎念的折木
- 粉丝: 5
- 资源: 7万+
最新资源
- 在线放大缩小左右旋转的图片特效
- Image-Compression-Using-Autoencoders-in-Keras:压缩和重建图像。 Paperspace Gradient的ML Showcase项目
- project-perditus-website:我的推测性生物学项目的存储库
- 蓝橙淡雅简洁工作总结汇报PPT模板
- 基于ssm和mysql的企业级书城项目源码+数据
- 丹佛斯变频器VLT_FC_280_PROFINET通信_GSD文件.zip
- pscad模型.zip
- rust-ssmtp:Rust通过ssmtp发送电子邮件
- Algorithm-rl-algorithms.zip
- Compressor:一个Android图像压缩库
- mysql-8.0.16.0的安装包.zip
- 线框:项目组合项目
- minecraft-fishermen:《我的世界》中的渔民
- UCI_Credit_Card.csv.zip
- ConferenceApp
- 丹佛斯变频器VACON_X5-500X_PROFIBUS通信_GSD文件.zip