最近在幫一個研究生弄一個虛擬化環境下的基於Innodb的日志文件的讀寫優化的實驗,實驗的具體詳細內容就不說了,其中有一個步驟需要將MySQL的日志文件放置在一塊單獨的硬盤里面,這塊硬盤要么是ext2,要么是ext4,ext4的性能據說比前面的ext系列的要高,所以選擇了ext4。但是ext4具備有日志的功能,如果開啟了這個日志功能的話,到時又會有多個虛擬機同時跑,那么這個ext4的日志功能會對我們的實驗數據產生一定的影響,並且我們在實驗中並不需要到這個日志功能,所以需要將這個日志功能關閉。具體如下步驟:
下面的vda便是虛擬機所導入的硬盤,我們先對這個硬盤格式化一下:
[root@centos7_vm_1 ~]# mkfs.ext4 /dev/vda mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 65536 inodes, 262144 blocks 13107 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=33816576 32 block groups 8192 blocks per group, 8192 fragments per group 2048 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185 Allocating group tables: done Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done
先來檢測一下/dev/vda硬盤上的ext4文件系統是否帶有日志功能:
[root@centos7_vm_1 ~]#dumpe2fs /dev/vda | grep 'Filesystem features' | grep 'has_journal' dumpe2fs 1.42.9 (28-Dec-2013) Filesystem features: has_journal ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
可以動態地在ext4文件系統創建之后關閉其日志功能:
[root@centos7_vm_1 ~]# tune2fs -O ^has_journal /dev/vda tune2fs 1.42.9 (28-Dec-2013)
如果需要開啟的話:
[root@centos7_vm_1 ~]# tune2fs -O has_journal /dev/vda tune2fs 1.42.9 (28-Dec-2013) Creating journal inode: done
參考鏈接:
http://www.lenky.info/archives/2012/02/990
