Hi Charles, all !
Charles Jardine wrote:
I am planning to set up a system in which mysql servers access
their data via NFS. [[...]]
If you want to use this for testing or development - fine.
If you want to run performance measurements on this - silly.
If you want to use it for "production" work - change your plans.
[[...]]
I have searched the manuals and found nothing that tells me that
this will not work. All the warnings are either about performance,
or about data sharing.
"work" may mean different things to different people.
I am quite sure that setup will give correct results for some tiny
installation tests, but I am also quite sure its performance and its
reliability will be limited (see below).
I would *not* use it for production purposes.
Are there other reasons why I should not do as I plan?
Immediately, I know these:
- Database performance can be limited by CPU or disk I/O.
- If it is disk:
Each disk access via NFS has the network roundtrip latency added to
the disk response time, and depending on the number of servers you
might even run into network bandwidth limits. So I/O performance
will suffer, and database performance will do the same.
- If it is CPU, this means you have plenty of cache (RAM), slow CPU,
and relatively fast disk. In this case, performance *might* remain
constant, but I would not rely on that.
- Accessing the data via NFS adds complexity and single points of
failure to your setup.
If either of these machines (or the network connecting them) is down,
all your database is down - the NFS setting reduces reliability.
- The database server and the disk machine may fail separately, for
various reasons, and disk failures may go unnoticed by the database
software. Recovery after failures may be difficult (or impossible) in
a NFS setting.
- Several database algorithms rely on ordered writes for structure
changes and/or logging. I strongly doubt NFS will ensure this write
order.
- Administrative effort will be higher, because you have to deal with
several machines for one database and have to do updates synchronized.
- I do not follow NFS versions. I know that earlier ones had issues with
locking; I cannot tell whether that is still valid.
There may be several others.
IMNSHO, you should have the server and the data it accesses in the same
box - either several (smaller, independent) machines with local disks,
or one (larger, multi-CPU and lots of RAM).
What is your reason to use NFS for the database files ?
HTH,
Joerg
--
Joerg Bruehe, Senior Production Engineer
MySQL AB, www.mysql.com
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]