浅谈linux性能调优之四:文件系统的日志隔离


   1.ext3文件系统在ext2的基础上添加了日志功能,如同数据库一样用日志来保证数据的一致性。

          ext2:前写block,后写inode!
          ext3:增添了日志区(有利于数据一致性),先写inode! 等数据写到文件系统后,清除日志

    2. 然而像oracle,mysql这样的大型数据都是基于日志文件,可以做到日志数据分离,即保证了数据的一致性又保证了效率。ext3这种文件系统默认都是内含的,小型服务器不做考虑,若是大型服务器,一方面是磁盘I/0慢,另一方面直接影响数据写入和读取的效率,因此建立数据区与日志区隔离,即减小I/O负担,加快数据写入效率,同时方便恢复
下面我给出日志区隔离的步骤:


1> umount 卸载分区,确保分区未使用


2> dumpe2fs /dev/sda1 | egrep -i (journal|size)   查看信息

3> tune2fs -O ^has_journal /dev/sda1 去掉内部默认的日志功能

4> mke2fs -O journal_dev -b 1024 /dev/sda5    格式化一个日志设备

5> tune2fs -j -J device=/dev/sda5 /dev/sda1    将日志设备添加到分区上

3. 用户还可以自己指定日志同步到文件系统的频率:
mount -o commit=15   日志同步到文件的间隔,可能数据丢失

4. 日志型文件系统的工作模式:不同的工作模式,效率不同,数据安全性不同

data=ordered 默认只有元数据写入日志区
data=journal 数据,元数据都写入日志区
data=writeback 只有元数据写入,但是不保证提交的次序

浅谈linux性能调优之四:文件系统的日志隔离_第1张图片
 

转载于:https://my.oschina.net/sharelinux/blog/143888

你可能感兴趣的:(浅谈linux性能调优之四:文件系统的日志隔离)