Hi,
we're currently considering the purchase of a FlexClone license for some of our database environment (MySQL 5, DOT 7.3.2, ~2TB data, growing fast), but I've been wondering if it provides the functionality we need.
AFAICT, what we'll get with FlexClone is a read-write snapshot -- which is fine --, but the real question is about service migration between two copies : let's suppose we have a dev and a production database ; how would we migrate the service (e.g. a MySQL server) between the two?
I realise hot migration will be complicated to implement, but do some of you already have played with this kind of things before?
Simon
AFAICT, what we'll get with FlexClone is a read-write snapshot -- which is fine --, but the real question is about service migration between two copies : let's suppose we have a dev and a production database ; how would we migrate the service (e.g. a MySQL server) between the two?
I think you might have to be a bit more clear about what you're hoping to accomplish and what your current setup is. How are you hosting your mysql data files? NFS, iscsi, fcp?
It sounds like you want to base a dev database off of a snapshot of a prod database (which is pretty normal) but then you want to eventually make the dev database the new prod database? and you're wondering how to make the server see the the new prod database on the flexclone volume? Is that an accurate summation?
We're mostly an oracle shop but I think in principle it's very similar. If you use nfs you'll just export and mount up the new prod volume to the prod server and point mysql at those datafiles and start it up. If you're using iscsi or fcp, you'll unmap the old lun{s} and then map the new prod lun to the server and mount them up, etc...
On Thu, 22 Apr 2010 20:03:52 +0900 Romeo Theriault romeotheriault@gmail.com wrote:
I think you might have to be a bit more clear about what you're hoping to accomplish and what your current setup is. How are you hosting your mysql data files? NFS, iscsi, fcp?
Yup. Sorry about that : the files containing data are stored on an NFS-mounted volume.
It sounds like you want to base a dev database off of a snapshot of a prod database (which is pretty normal) but then you want to eventually make the dev database the new prod database? and you're wondering how to make the server see the the new prod database on the flexclone volume? Is that an accurate summation?
Yes, mostly : essentially, we'd need several copies of some of our databases, so that we can strip information from some copies. The reason we want to do this is because this information is to be backed up a bit differently.
We could do it simply by copying the files and editing them directly (or starting a second RDBMS instance), but as the dataset in question is rather large (2TB), we'd rather skip the copy operation. So we came to the FlexClone idea. The question is : does this sounds implementable ?
We are also thinking about using FlexClone for rapid switching between dev and prod environments, but the main need is the above one. (I hope that I am clear enough now?)
We're mostly an oracle shop but I think in principle it's very similar. If you use nfs you'll just export and mount up the new prod volume to the prod server and point mysql at those datafiles and start it up. If you're using iscsi or fcp, you'll unmap the old lun{s} and then map the new prod lun to the server and mount them up, etc...
OK. Does Oracle for example offer some possibility of hot-switching between two database backends (because if Oracle doesn't, I seriously doubt MySQL will)?
Simon
Yes, mostly : essentially, we'd need several copies of some of our databases, so that we can strip information from some copies. The reason we want to do this is because this information is to be backed up a bit differently.
We could do it simply by copying the files and editing them directly (or starting a second RDBMS instance), but as the dataset in question is rather large (2TB), we'd rather skip the copy operation. So we came to the FlexClone idea. The question is : does this sounds implementable ?
Yes, sounds like a good use-case for flexclones.
We are also thinking about using FlexClone for rapid switching between dev and prod environments, but the main need is the above one.
I'm not a DBA, so maybe it's my lack of understanding in the topic area, but I'm not entirely sure what you mean by rapid switching between dev and prod environments. But with mysql you could bring the DB down, change the datadir variable in the my.cnf file to point to the new data files and then bring mysql back up on those. Is that what you mean?
OK. Does Oracle for example offer some possibility of hot-switching
between two database backends (because if Oracle doesn't, I seriously doubt MySQL will)?
Don't know, but I don't think so.
Maybe there is a possibility that you rename the database in the clone. This way maybe you could create a symbolic link in your systems mysql datadir to the "new" database, which is actually a renamed clone of the prod db, then bring the db up in the currently running instance of mysql, just under a different name. Google around a bit for mysql symbolic links.
HTH's,
Hi,
On Fri, 23 Apr 2010 00:52:48 +0900 Romeo Theriault romeotheriault@gmail.com wrote:
Yes, sounds like a good use-case for flexclones.
Fine.
We are also thinking about using FlexClone for rapid switching between dev and prod environments, but the main need is the above one.
I'm not a DBA, so maybe it's my lack of understanding in the topic area, but I'm not entirely sure what you mean by rapid switching between dev and prod environments. But with mysql you could bring the DB down, change the datadir variable in the my.cnf file to point to the new data files and then bring mysql back up on those. Is that what you mean?
I'm not a DBA either -- the idea was to *not* bring the DB down ;-) I realise this will be difficult, though.
Thanks, Simon