AI智能
改变未来

Mysql面试题1

数据库linux安装

存储引擎
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。存储引擎主要有: 1. MyIsam , 2. InnoDB, 3. Memory, 4. Archive, 5. Federated 。

InnoDB(B+树)
InnoDB 底层存储结构为B+树, B树的每个节点对应innodb的一个page,page大小是固定的,一般设为16k。其中非叶子节点只有键值,叶子节点包含完成数据。

适用场景:
1)经常更新的表,适合处理多重并发的更新请求。
2)支持事务。
3)可以从灾难中恢复(通过bin-log 日志等)。
4)外键约束。只有他支持外键。
5)支持自动增加列属性auto_increment

MyIASM
MyIASM是MySQL 默认的引擎,但是它没有提供对数据库事务的支持,也不支持行级锁和外键,因此当INSERT(插入)或UPDATE(更新)数据时即写操作需要锁定整个表,效率便会低一些。ISAM 执行读取操作的速度很快,而且不占用大量的内存和存储资源。在设计之初就预想数据组织成有固定长度的记录,按顺序存储的。—ISAM 是一种静态索引结构。
缺点是它不 支持事务处理。















存储过程



合并(一组mysam的组合)































































当自己加了读锁之后,不能进行更新操作,别的用户也不能更新,若更新则,阻塞,直到别人释放锁。

写锁

当前线程可读可写

其他线程不可读不可写(阻塞状态,等别的线程释放之后,可以继续读和写)

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Mysql面试题1