Ozzie Asked: 2015-07-30 07:37:56 +0800 CST2015-07-30 07:37:56 +0800 CST 2015-07-30 07:37:56 +0800 CST 是否应该将生产 MySQL 服务器上的重做日志配置到另一个位置? 772 关于 innoDB 存储引擎,是否应该将innodb_log_group_home_dir选项(InnoDB 日志文件的目录路径)配置为默认目录以外的另一个磁盘,以便将日志 I/O 活动与实际数据文件分开? 像在其他 DBMS 中一样,将数据目录放在 RAID5 存储卷上并将重做日志放在 RAID1 上是否有优势? mysql innodb 2 个回答 Voted Best Answer RolandoMySQLDBA 2015-07-30T08:08:27+08:002015-07-30T08:08:27+08:00 是的,那是个好主意。我在我的其他帖子中提到了一个关于这样做的 FaceBook 工程师博客,以及将 DoubleWrite 缓冲区和表空间文件放在其他地方 Feb 24, 2012:使用 XtraDB 为 OLTP 调整专用的 Percona 服务器(另请参阅切换到 RAID) Feb 06, 2014: SSD 上的 MySQL - 缺点是什么? Jan 27, 2015:将我的表拆分为表空间和/或单独的模式的主要缺点是什么 RAID5 ???天哪,不!!!! 请不要在 RAID5 中放置任何与 InnoDB 相关的内容 Feb 14, 2012: raid 5适合安装mysql吗? Mar 24, 2013:Innodb 表随机花费很长时间来执行插入查询,并在显示进程列表中显示为查询结束/更新 由于只有在发生崩溃恢复时才需要重做日志,因此我会为重做日志使用 RAID10 SAS 驱动器,因为它们是按顺序写入的文件。我会回避 RAID1,因为您希望在磁盘崩溃时磁盘完全冗余。RAID5 进行了大量的奇偶校验,可以抑制顺序写入。 Rick James 2015-08-01T18:20:00+08:002015-08-01T18:20:00+08:00 带有电池后备写入高速缓存的 RAID-5 控制器非常出色。写入(对 MySQL)似乎是瞬时的。 在比较 RAID-5 和 -10 时,您需要确定是在比较 N 驱动器与 N 驱动器还是比较 M GB 与 M GB。 N 个驱动器:RAID-10 将其读取分散到 N 个驱动器上;RAID-5 也是如此。在这两种情况下写入都命中了 2 个驱动器,但奇偶校验块的读取-修改-写入可能会使 RAID-5 稍微慢一些。 M GB:现在您正在比较 6 个 RAID-10 驱动器和 4 个 RAID-5 驱动器(以获得 3 个驱动器的空间)。所以 RAID-10 可能在读取和写入上都获胜。 但是...除非您使 I/O 饱和,否则 RAID 控制器会隐藏差异。 RAID-5 或 -10 优于手动将文件放在不同的驱动器上: 当其他驱动器上有足够的可用空间时,一个驱动器上的磁盘空间不足的风险较小。 I/O 分布更均匀,因此吞吐量更高。通过手动拆分,您很可能会导致一个驱动器过度工作而其他驱动器不那么忙。 “电池供电”的一个问题是:控制器会定期耗尽电池电量以延长其使用寿命。那时,写缓存被关闭,写变得非常慢。(这种循环持续几分钟,并且每年可能发生两次。) RAID-5 和 RAID-10 都可以承受单个驱动器故障。-5 不能一次处理2个失败;-10 可以处理一些2 驱动器故障。(另见 -6。) 由于驱动器故障是许多可能变坏的事情之一(主板、控制器、电涌、地震、龙卷风、手动操作失误、软件错误、交流电故障导致的超温……),我认为只考虑问题是短视的查看 HA、BCP 等时的 RAID(甚至 DRBD)。 我投票支持带有 N 个驱动器和 RAID-5 的单个文件系统或带有 BBWC 的 -10。 好吧,那是用于旋转驱动器的。 对于 HD/SSD 混合系统,将“日志”放在 HD 上,因为顺序访问相对较快;将 InnoDB 的东西放在 SSD 上,其中随机访问很重要。如果可能的话,买一个保证原子 16KB 写入的 SSD 品牌,然后关闭 InnoDB 的“double write buffering”。 对于全 SSD,请确保磨损均衡足够好,以便所有驱动器不会同时磨损(从而使 RAID 无用)。
是的,那是个好主意。我在我的其他帖子中提到了一个关于这样做的 FaceBook 工程师博客,以及将 DoubleWrite 缓冲区和表空间文件放在其他地方
Feb 24, 2012
:使用 XtraDB 为 OLTP 调整专用的 Percona 服务器(另请参阅切换到 RAID)Feb 06, 2014
: SSD 上的 MySQL - 缺点是什么?Jan 27, 2015
:将我的表拆分为表空间和/或单独的模式的主要缺点是什么RAID5 ???天哪,不!!!!
请不要在 RAID5 中放置任何与 InnoDB 相关的内容
Feb 14, 2012
: raid 5适合安装mysql吗?Mar 24, 2013
:Innodb 表随机花费很长时间来执行插入查询,并在显示进程列表中显示为查询结束/更新由于只有在发生崩溃恢复时才需要重做日志,因此我会为重做日志使用 RAID10 SAS 驱动器,因为它们是按顺序写入的文件。我会回避 RAID1,因为您希望在磁盘崩溃时磁盘完全冗余。RAID5 进行了大量的奇偶校验,可以抑制顺序写入。
带有电池后备写入高速缓存的 RAID-5 控制器非常出色。写入(对 MySQL)似乎是瞬时的。
在比较 RAID-5 和 -10 时,您需要确定是在比较 N 驱动器与 N 驱动器还是比较 M GB 与 M GB。
N 个驱动器:RAID-10 将其读取分散到 N 个驱动器上;RAID-5 也是如此。在这两种情况下写入都命中了 2 个驱动器,但奇偶校验块的读取-修改-写入可能会使 RAID-5 稍微慢一些。
M GB:现在您正在比较 6 个 RAID-10 驱动器和 4 个 RAID-5 驱动器(以获得 3 个驱动器的空间)。所以 RAID-10 可能在读取和写入上都获胜。
但是...除非您使 I/O 饱和,否则 RAID 控制器会隐藏差异。
RAID-5 或 -10 优于手动将文件放在不同的驱动器上:
“电池供电”的一个问题是:控制器会定期耗尽电池电量以延长其使用寿命。那时,写缓存被关闭,写变得非常慢。(这种循环持续几分钟,并且每年可能发生两次。)
RAID-5 和 RAID-10 都可以承受单个驱动器故障。-5 不能一次处理2个失败;-10 可以处理一些2 驱动器故障。(另见 -6。)
由于驱动器故障是许多可能变坏的事情之一(主板、控制器、电涌、地震、龙卷风、手动操作失误、软件错误、交流电故障导致的超温……),我认为只考虑问题是短视的查看 HA、BCP 等时的 RAID(甚至 DRBD)。
我投票支持带有 N 个驱动器和 RAID-5 的单个文件系统或带有 BBWC 的 -10。
好吧,那是用于旋转驱动器的。
对于 HD/SSD 混合系统,将“日志”放在 HD 上,因为顺序访问相对较快;将 InnoDB 的东西放在 SSD 上,其中随机访问很重要。如果可能的话,买一个保证原子 16KB 写入的 SSD 品牌,然后关闭 InnoDB 的“double write buffering”。
对于全 SSD,请确保磨损均衡足够好,以便所有驱动器不会同时磨损(从而使 RAID 无用)。