MySQL设置undo_mysql undo

mysql> show variables like '%undo%';

+-------------------------+-------+

| Variable_name | Value |

+-------------------------+-------+

| innodb_undo_directory | . |

| innodb_undo_logs | 128 |

| innodb_undo_tablespaces | 0 |

+-------------------------+-------+

3 rows in set (0.00 sec)

innodb_undo_directory :

相对的或者绝对路径 InnoDB 创建单独的表空间用于undo logs.

通常用于防止那些日志在不同的存储设备,和innodb_undo_logs and innodb_undo_tablespaces 结合起来使用,

确定了undo logs的磁盘布局 默认值是"." 表示同样的目录和InnoDB创建它的其他日志文件一样

注意:

一个绝对路径必须被设置用于嵌入式的MYSQL 安装

innodb_undo_logs:

定义 undo logs 的数量(否则称为回滚段) 用于InnoDB 对于数据修改事务 产生undo ecords.

每个undo log 可以接待多大1024个事务

这个设置是合适的用于性能调优 如果你观察到undo logs的相关争用。

innodb_undo_logs 选项替换innodb_rollback_segments

对于可用undo logs的总量,而不是活动的数量

mysql> SHOW GLOBAL STATUS;

Innodb_available_undo_logs:

可用InnoDB undo logs 的总的数量,补充innodb_undo_logs 系统变量, 报告活动undo logs的数量

虽然你可以增加或者减少 undo logs 使用的数量, undo logs的数量物理表现在系统山该不会减少。

因此你可能 开始一个低的值用于这个参数,逐步增大它,以避免分配不需要的undo logs.

如果 innodb_undo_logs 没有被设置,它默认最小值是128

jrhdpt11:/root# mysql -uroot -p'R00t,uHagt.0511' -e"SHOW GLOBAL STATUS;" | grep undo

Warning: Using a password on the command line interface can be insecure.

Innodb_available_undo_logs128

innodb_undo_tablespaces:

表空间文件的数量,undo logs 是被分成当你使用一个非0的 innodb_undo_logs setting

默认的,所有的undo logs 是system tablespace的一部分, system tablespace 总是包含一个undo tablespace

除了那些配置了innodb_undo_tablespaces之外

因为undo logs 可以变大 在运行长时间运行的事务,让undo logs 在多个tablespaces 降低了 任何单个表空间的最大值

undo tablespace 文件是创建在innodb_undo_directory 定义的目录

重要:

innodb_undo_tablespaces 只能在初始化之前配置MySQL 实例,以后不能更改。

如果没有值指定, 实例是使用默认设置初始化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值