一、关于一个SQL的简单的工作过程
1、工作前提描述
1、启动MySQL,在内存中分配一个大空间innodb_buffer_pool(其中log_buffer)
2、多用户线程连接MySQL,从内存分配用户工作空间(其中排序空间)
3、磁盘上有数据库文件、ib_logfile、tmp目录、undo
2、SQL的简易流程
1、DQL操作
1、首先进行内存读
2、如果buffer pool中没有所需数据,就进行物理读
3、物理读数据读入buffer pool,再返回给用户工作空间
2、DML操作(例update)
1、内存读,然后进行物理读,读取所需修改的数据行
2、从磁盘调入undo页到buffer pool中
3、修改前的数据存入undo页里,产生redo
4、修改数据行(buffer pool中数据页成脏页),产生redo
网友评论