That is what I need! Thanks so much again to everyone!

HT

On Tue, 10 Aug 2004 14:32:13 -0700, Justin Swanhart <[EMAIL PROTECTED]> wrote:
> You can put multiple renames in one statement, and the entire rename
> will be atomic..
> 
> I create "summary" tables from some of my data, and I periodically
> refresh them.  When refreshing them I create new tables to replace the
> old tables with..
> 
> Then I do:
> rename current_table to old_table, new_table to current_table
> 
> On Tue, 10 Aug 2004 13:50:34 -0700, Haitao Jiang <[EMAIL PROTECTED]> wrote:
> > It would be great if there is a swap table command that is atomic.
> >
> > Thanks a lot
> >
> > Haitao
> >
> > On Tue, 10 Aug 2004 13:23:30 +0300, Egor Egorov <[EMAIL PROTECTED]> wrote:
> > > Haitao Jiang <[EMAIL PROTECTED]> wrote:
> > >
> > > > Thanks so much for the reply! So, if I understand correctly, to swap
> > > > the table like I described, I should do:
> > > >
> > > > LOCK TABLES A write,A2 write;
> > > > FLUSH TABLES;
> > > > rename table A to A1;
> > > > rename table A2 to A;
> > > > UNLOCK TABLES;
> > > >
> > > > Right? If there is no write to either A or A2, then there is no need
> > > > to lock the table, right?
> > >
> > > You can't rename locked tables. RENAME is atomic anyway so you can safely use
> > > it without lock. But your software should be aware of a possible race condition
> > > that happens between two RENAME TABLEs.
> > >
> > >
> > >
> > >
> > > > Thanks!
> > > >
> > > > On Mon, 09 Aug 2004 19:21:39 +0300, Egor Egorov <[EMAIL PROTECTED]> wrote:
> > > >> Haitao Jiang <[EMAIL PROTECTED]> wrote:
> > > >>
> > > >> > Case 1: I have a table A under a running MySQL 4.1.3b server. If I
> > > >> > replace A.MYD and A.MYI files without stop and start the server, will
> > > >> > data gets corrupted?
> > > >>
> > > >> It depends on many factors. Honestly, there are lots of cases where you will
> > > >> get correct data and nothing wrong will happen. But you have to be an
> > > >> experience Unix developer to understand Unix internals in order to dance like
> > > >> that. :)
> > > >>
> > > >> So the general answer is: don't, it's too dangerous.
> > > >>
> > > >> > Case 2: I rename A to A1, and A2 to A, assume A, A2 have the same
> > > >> > schema but different data/index. Is it bad? Will data gets corrupted?
> > > >> > I tied this one, it seems ok.
> > > >>
> > > >> Yes, you're right, it just *SEEMS* ok. :)
> > > >>
> > > >> If you really need to replace table files, use FLUSH TABLES, LOCK TABLES:
> > > >>
> > > >> http://dev.mysql.com/doc/mysql/en/FLUSH.html
> > > >> http://dev.mysql.com/doc/mysql/en/LOCK_TABLES.html
> > > >>
> > > >> --
> > > >> For technical support contracts, goto https://order.mysql.com/?ref=ensita
> > > >> This email is sponsored by Ensita.net http://www.ensita.net/
> > > >>   __  ___     ___ ____  __
> > > >>  /  |/  /_ __/ __/ __ \/ /    Egor Egorov
> > > >> / /|_/ / // /\ \/ /_/ / /__   [EMAIL PROTECTED]
> > > >> /_/  /_/\_, /___/\___\_\___/   MySQL AB / Ensita.net
> > > >>       <___/   www.mysql.com
> > > >>
> > > >>
> > > >> --
> > > >> MySQL General Mailing List
> > > >> For list archives: http://lists.mysql.com/mysql
> > > >> To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
> > > >>
> > > >>
> > > >
> > >
> > > --
> > > For technical support contracts, goto https://order.mysql.com/?ref=ensita
> > > This email is sponsored by Ensita.net http://www.ensita.net/
> > >   __  ___     ___ ____  __
> > >  /  |/  /_ __/ __/ __ \/ /    Egor Egorov
> > > / /|_/ / // /\ \/ /_/ / /__   [EMAIL PROTECTED]
> > > /_/  /_/\_, /___/\___\_\___/   MySQL AB / Ensita.net
> > >       <___/   www.mysql.com
> > >
> > > --
> > > MySQL General Mailing List
> > > For list archives: http://lists.mysql.com/mysql
> > > To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
> >
> >
> > >
> > >
> >
> > --
> > MySQL General Mailing List
> > For list archives: http://lists.mysql.com/mysql
> > To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
> >
> >
>

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to