你的位置:首页 > 软件开发 > 数据库 > MySQL 调优基础(三) Linux文件系统

MySQL 调优基础(三) Linux文件系统

发布时间:2015-10-07 00:00:05
Linux的文件系统有点像MySQL的存储引擎,它支持各种各样的文件系统。它最上层是通过 virtual files system虚拟文件系统作为一个抽象接口层来对外提供调用的。然后下层的各种文件系统实现这些调用接口就行了。1. Linux 中的 日志文件系统和非日志文件系统文件 ...

Linux的文件系统有点像MySQL的存储引擎,它支持各种各样的文件系统。它最上层是通过 virtual files system虚拟文件系统作为一个抽象接口层来对外提供调用的。然后下层的各种文件系统实现这些调用接口就行了。

1. Linux 中的 日志文件系统和非日志文件系统

文件内容的修改涉及到两部分:实际文件内容的修改 和 文件元(metadata)信息的修改。所以在修改一个成功之后,修改另一个之前,此时系统崩溃,就会导致两者的不一致。所以提出了日志文件系统的概念。

所谓的日志文件系统(Journaling file system),就是在实际修改文件内容和文件元信息之前,将他们的修改先写到一个日志中(journal log)。这样的话,如果发生系统崩溃,就可以使用日志进行恢复。当然,写日志会对文件系统的性能有一定的影响。除了ext2之外,其它文件系统几乎都是日志文件系统。

日志文件系统的处理过程是:1)先写日志;2)然后写实际的文件系统;3)删除日志;

日志文件系统又可以分成三种类型:

1)日志模式(journal): 将所有的元数据和数据改变均写入日志,对性能影响最大;

2)预定模式(ordered): 只记录元数据的变化, 在数据写入磁盘后再修改元数据,对性能影响中等;

3)写回模式(writeback): 只记录元数据的修改变化,对数据修改顺序无要求,对性能影响最小;

我们可以在/etc/fstab 文件中修改文件系统的日志模式。

/dev/sdb1 /testfs ext3 defaults,data=writeback 0 0

Linux 常用文件系统:

ext4, ext4, XFS, ReiserFS, JFS

其中最常用的是 ext4, XFS. 其中redhat7/centos7将XFS作为默认的文件系统。在最新内核的测试中XFS性能也明显超过ext4。所以对于mysql服务器,最好选择使用 XFS 文件系统

关于 ssd上的ext4和xfs有一个比较:

https://www.percona.com/blog/2012/03/15/ext4-vs-xfs-on-ssd/

在rhel6.4之前ext4性能比xfs好,因为xfs有lock争用的bug。但是6.4开始,xfs的bug被fix了。所以xfs性能比ext4好。

在xfs的锁争用bug没有解决时:

  sync           asyncthreads throughput      throughput   XFS     ext4    XFS     ext41  1.90/124k  1.41/92k  1.72/112k  1.41/92k2  1.01/64k  1.65/108k  0.97/62k  1.65/108k4  0.27/17k  1.55/102k  0.21/13k  1.55/102k8  0.13/8k   1.45/95k   0.15/9k   1.45/95k16  0.12/7k   1.45/95k   0.12/7k   1.45/95k 

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:MySQL 调优基础(三) Linux文件系统

关键词:MYSQL

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。