Optimal RAID10 config on PERC6 (cache question)

Martin Turgeon freebsd at optiksecurite.com
Thu Jun 17 15:51:30 UTC 2010

Hi everyone,

I got 2 brand new Dell R510 with 4x146 SAS 10K RPM connected to the 
PERC6 RAID adapter in a RAID10 configuration. Those servers are mostly 
going to be used for a master/master MySQL replication. Both are running 
8.0-REL amd64. When I took a look at the 'mfiutil' command to make a 
script to detect RAID failure I saw that the cache were disabled on the 
volume: (those are all Dell's default)

db1# mfiutil show volumes
mfi0 Volumes:
   Id     Size    Level   Stripe  State   Cache   Name
  mfid0 (  272G) RAID-10     64K OPTIMAL Disabled

db1# mfiutil cache mfid0
mfi0 volume mfid0 cache settings:
       I/O caching: disabled
     write caching: write-back
        read ahead: none
drive write cache: default

I read in the man page of mfiutil that "drive write cache" is the cache 
on the physical drive which should be disable for data integrity. My 
first question is: Is the 'default' to disable the physical drive cache 
or should I modify it explicitly to disable?

I configured 'innodb_flush_method=O_DIRECT' in my.cnf to maximize 
performance, but I read that this option should only be used with a 
battery backed up RAID card. My PERC6 got a battery but I'm wondering if 
the current setting for my cache are using it correctly?

Can someone explain me the differences between the cache types? My main 
concern is data integrity in case of hardware or power failures. What 
would be the optimal configuration in that case.

Thanks in advance for your clever insights,



More information about the freebsd-questions mailing list