17.MySql

2020-11-24  本文已影响0人  抄无止境

1.数据库的三范式是什么?

2.一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 mysql 数据库,又插入了一条数据,此时 id 是几?

MySQL5.7及之前的版本,InnoDB 表只会把自增主键的最大 id 记录在内存中,所以重启之后会导致最大 id 丢失。

3.如何获取当前数据库版本?

使用 select version() 获取当前 MySQL 数据库版本。

4.说一下 ACID 是什么?

5.char 和 varchar 的区别是什么?

6.float 和 double 的区别是什么?

7.mysql 的内连接、左连接、右连接有什么区别?

8.mysql 索引是怎么实现的?

9.怎么验证 mysql 的索引是否满足需求?

使用 explain 查看 SQL 是如何执行查询语句的,从而分析你的索引是否满足需求。
explain 语法:explain select * from table where type=1。

10.说一下数据库的事务隔离?

MySQL 的事务隔离是在 MySQL. ini 配置文件里添加的,在文件的最后添加:transaction-isolation = REPEATABLE-READ

可用的配置值:READ-UNCOMMITTED、READ-COMMITTED、REPEATABLE-READ、SERIALIZABLE。

隔离级别造成的现状

11.数据库事务和spring事务的区别

12. 说一下 mysql 常用的引擎?

13.说一下 mysql 的行锁和表锁?

MyISAM 只支持表锁,InnoDB 支持表锁和行锁,默认为行锁。

14.说一下乐观锁和悲观锁?

数据库的乐观锁需要自己实现,在表里面添加一个 version 字段,每次修改成功值加 1,这样每次修改的时候先对比一下,自己拥有的 version 和数据库现在的 version 是否一致,如果不一致就不修改,这样就实现了乐观锁。

15.mysql 问题排查都有哪些手段?

16.如何做 mysql 的性能优化?

上一篇 下一篇

猜你喜欢

热点阅读