MySQL55题详解:InnoDB与MyISAM区别、事务隔离与数据类型
版权申诉
143 浏览量
更新于2024-08-03
收藏 233KB PDF 举报
本资源是一份名为"MySQL55题答案.pdf"的文档,包含了关于MySQL数据库的多个知识点,适合用于复习和准备MySQL相关的面试题。以下是部分提炼的知识点:
1. **自增主键的处理**:
- 在MyISAM表类型中,如果插入记录后删除了自增ID对应的行,然后重启MySQL,新插入的记录ID将跳过被删除的ID,直接继续自增序列,因此是18。
- 对于InnoDB表,自增ID存储在内存中,重启可能导致ID丢失,所以在这种情况下,新插入的记录ID可能是15。
2. **Mysql技术特点**:
- Mysql是一个开源、免费的数据库系统,支持多线程SQL服务器、不同后端、多种API和管理工具。
- 具有便携性,提供了命令行界面和GUI工具,如查询浏览器,便于管理和操作。
3. **HEAP表与存储特性**:
- HEAP表是内存中的临时存储结构,只适用于非持久数据,不支持BLOB或TEXT字段,且只允许比较运算。
- 不支持AUTO_INCREMENT,索引不允许为NULL。
4. **默认配置信息**:
- Mysql服务器的默认监听端口是3306。
5. **与Oracle比较的优势**:
- Mysql作为开源软件,成本更低,无需付费。
- 提供便携性,以及命令行和图形用户界面。
6. **FLOAT和DOUBLE的区别**:
- FLOAT占用4字节,精度为8位;而DOUBLE占用8字节,精度为18位。
7. **CHAR_LENGTH和LENGTH的区别**:
- CHAR_LENGTH返回字符串的实际字符数,而LENGTH则返回字节数,对于不同字符编码,两者结果不同。
8. **InnoDB事务隔离级别**:
- 从低到高依次是:read-uncommitted(读未提交),read-committed(脏读),repeatable-read(可重复读),serializable(串行化)。
- 各级别确保数据的一致性和并发控制,serializable级别提供最高的数据一致性和隔离性。
9. **ENUM的使用**:
- ENUM用于定义列的预设值列表,如创建表时声明`size ENUM('Small', 'Medium', 'Large')`,表示size字段只能取这些值。
通过这份文档,你可以深入理解MySQL的各种概念、数据类型、事务处理和存储机制,有助于提升MySQL的相关技能和应对面试挑战。
2021-09-26 上传
2021-09-06 上传
2021-11-26 上传
2021-09-26 上传
2024-05-31 上传
2019-11-04 上传
2021-09-26 上传
2009-05-09 上传
2023-07-14 上传