本文共 6250 字,大约阅读时间需要 20 分钟。
在CENTOS6上面,需要安装mysql数据库,为提高数据库的读写效率和性能,准备将mysql数据文件系统安装在XFS分区上。
XFS,一种高性能的日志文件系统,最早于1993年,由Silicon Graphics为他们的IRIX操作系统而开发,是IRIX 5.3版的默认文件系统。后来被移植到Linux 内核上。XFS 特别擅长处理大文件,同时提供平滑的数据传输。在存储很大的环境下进行格式化操作,XFS文件系统的速度比ext3、ext4文件系统快了很多!而且据说XFS可以支持到100T,读写速度也优于其他文件系统。
系统环境:CENTOS6.4
一、安装xfs文件系统
XFS所需要的rpm包在系统的ISO文件中都可以找到,我们只需要安装xfsprogs和xfsdump这两个包就可以了。
[root@localhost Packages]# find . -name "xfs*.rpm"
./xfsdump-3.0.4-3.el6.x86_64.rpm
./xfsprogs-devel-3.1.1-10.el6.x86_64.rpm
./xfsprogs-qa-devel-3.1.1-10.el6.i686.rpm
./xfsprogs-qa-devel-3.1.1-10.el6.x86_64.rpm
./xfsprogs-devel-3.1.1-10.el6.i686.rpm
./xfsprogs-3.1.1-10.el6.i686.rpm
./xfsprogs-3.1.1-10.el6.x86_64.rpm
[root@localhost Packages]# rpm -ivh xfsprogs-3.1.1-10.el6.x86_64.rpm xfsdump-3.0.4-3.el6.x86_64.rpm
warning: xfsprogs-3.1.1-10.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing... ########################################### [100%]
1:xfsprogs ########################################### [ 50%]
2:xfsdump ########################################### [100%]
二、XFS格式化
XFS格式化速度很快,几乎是立刻就完成了格式化。
[root@localhost Packages]# mkfs.xfs /dev/sdb
meta-data=/dev/sdb isize=256 agcount=4, agsize=655360 blks
= sectsz=512 attr=2, projid32bit=0
data = bsize=4096 blocks=2621440, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
三、挂载测试
[root@localhost /]# mount -t xfs /dev/sdb /data
[root@localhost /]# mount |grep data
/dev/sdb on /data type xfs (rw)
测试:
写性能
[root@localhost test]# time dd if=/dev/zero of=/data/test/ceshi.txt bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.42419 s, 247 MB/s
real0m0.431s
user0m0.001s
sys0m0.427s
读性能
[root@localhost test]# time dd if=/data/test/ceshi.txt of=/dev/null bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.129903 s, 807 MB/s
real0m0.135s
user0m0.003s
sys0m0.132s
四、补充XFS优化
#mkfs.xfs -f -i size=512 -l size=128m,lazy-count=1 -d agcount=16 /dev/sdb1
vi /etc/fstab
修改挂载选项
/dev/sdb1 /data xfs defaults,noatime,nobarrier 00
重新挂载
mount -o remount /data
noatime 默认的方式下linux会把文件访问的时间atime做记录,这在绝大部分的场合都是没有必要的,如果遇到机器IO负载高或是CPU WAIT高的情况,可以尝试使用noatime,疗效好,见效快。
logbufs=value Set the number of in-memory log buffers. Valid numbers range from 2-8 inclusive. The default value is 8 buffers for filesystems with a blocksize of 64K, 4 buffers for filesystems with a blocksize of 32K, 3 buffers for filesystems with a blocksize of 16K, and 2 buffers for all other configurations. Increasing the number of buffers may increase performance on some workloads at the cost of the memory used for the additional log buffers and their associated control structures. logbsize=value Set the size of each in-memory log buffer. Valid sizes are 16384 (16K) and 32768 (32K). The default value for machines with more than 32MB of memory is 32768, machines with less memory use 16384 by default.
测试后发现读写性能还可以更好,测试方法同上。
五、XFS的优缺点
优点:
XFS使用高的表结构(B+树),保证了文件系统可以快速搜索与快速空间分配。XFS能够持续提供高速操作,文件系统的性能不受目录中目录及文件数量的限制。
注:一般大于2T的分区用PARTED来分,而对于大于16T的分区虽然可以用PARTED来分,但使用EXT4分区格式来挂载时,也易出错。在这个时候把大于16T的单个分区用XFS来格式化,然后挂载是可以正常的。
XFS 能以接近裸设备I/O的性能存储数据。在单个文件系统的测试中,其吞吐量最高可达7GB每秒,对单个文件的读写操作,其吞吐量可达4GB每秒
缺点:
转载地址:http://hardl.baihongyu.com/