diff --git a/mysql/mysql文档/mysql_事务.md b/mysql/mysql文档/mysql_事务.md index 85040f5..f5c0843 100644 --- a/mysql/mysql文档/mysql_事务.md +++ b/mysql/mysql文档/mysql_事务.md @@ -282,5 +282,19 @@ innodb通过segment来管理undo log,其管理方式如下: ##### innodb_undo_directory 该参数用于设置rollback segment文件所在的路径,默认为`./`,代表`datadir`。 +如果`innodb_undo_directory`变量没有被定义,那么undo tablespace将会被创建再`datadir`下。默认情况下,undo tablespaces文件的名称为`undo_001`和`undo_002`。 + +##### innodb_rollback_segments +每个undo tablespace支持最大128个rollback segments,`innodb_rollback_segments`变量定义了rolback segments的数量。 + +每个rollback segments支持的事务数量由`rollback segment中undo slot的数量`和`每个事务需要的undo log数量`来决定。 + +> 当innodb页大小为16KB时,rollback segment中undo slot的数量为`innodb page size/ 16`,即1024个。 + +##### innodb_undo_tablespaces +该变量设置了undo tablespaces的数量。 + + +