Shawn,

Thanks for the reply, but I think the thread has become much more dramatic than 
nececessary.  Basically, I'm not looking for what has been ALTERed.  I simply 
need the table 
creation data output in ALTER IGNORE (or whatever is appropriate) format so as 
to ensure 
table structure is the same before performing any INSERTS.  I don't wish to 
DROP tables 
because that would then require reimporting all data.  I simply want to write a 
tool to 
perform updates between multiple databases that keep them in two-way sync with 
their 
respective DBs (and even then, only specific tables) on a main server, both 
structure-wise 
and data-wise.

The current systems don't use bin logs (*eyes rolling in back of head*) and we 
don't need 
replication, but true two-way syncing.  Are there any truly quality two-way 
replication master 
techniques that you can recommend?  I've been working with SJA and I like it 
pretty well.  I'd 
like to write my own, similar  program, but  I think it might just work for now.

Regards,
Michael

---------- Original Message ----------------------------------
From: [EMAIL PROTECTED]
Date:  Tue, 21 Feb 2006 11:18:44 -0500

>Michael,
>
>I have been following this thread from the beginning and I just don't see 
>the practical difference between what you propose and the replication 
>methods (SBR and RBR) already in place. How does what you propose differ 
>from the SBR (statement -based replication) that MySQL already supports? 
>
>Sorry if I am being dense but don't your source and destination schemas 
>need to stay in synch in order for the changes in one table to be able to 
>apply to the other? Isn't that why you are worried about capturing your 
>schemas as ALTER TABLE statements?   With SBR, each time a table is 
>altered on the replication master, that ALTER TABLE statement is inserted 
>in the binlog so that the change propagates to the slaves. The DML (data 
>modification language) statements that follow the ALTER TABLE statement in 
>the binlog won't fail because they will be applied to the correct schema 
>on the slave.
>
>Again, my sincere apologies for missing the difference in the purpose of 
>what you are trying to do.
>
>Respectfully,
>
>Shawn Green
>Database Administrator
>Unimin Corporation - Spruce Pine
>
>
>"mwilliams" <[EMAIL PROTECTED]> wrote on 02/20/2006 01:36:18 PM:
>
>> Sheeri,
>> 
>> Thanks very much for the reply.  However, that is not what I'm 
>> looking for.  I don't want the 
>> tables that *have been* altered.  I want CREATE TABLE statements 
>> output in the ALTER TABLE 
>> format for re-creation on another system (clean or otherwise).
>> 
>> Regards,
>> Michael
>> ---------- Original Message ----------------------------------
>> From: "sheeri kritzer" <[EMAIL PROTECTED]>
>> Date:  Mon, 20 Feb 2006 12:22:55 -0500
>> 
>> >mysqldump takes a table or database and "dumps" it -- current schema,
>> >current data.  You won't get alter tables.
>> >
>> >What you want is something that will show all the alter statements. 
>> >You can run something like this on unix:
>> >
>> >tail -f binlog* | grep ALTER > alter.sql
>> >
>> >and then the alter.sql text file will always have the alter
>> >statements.  The binary log captures the alter statements.
>> >
>> >Or, you could create an 'alteration' table with a text field and
>> >timestamp, and have a trigger copy the alter statement to the
>> >alteration table.
>> >
>> >But mysqldump is the wrong solution, because it only dumps "now".
>> >
>> >hope this helps!
>> >-Sheeri
>> >
>> >On 2/16/06, mwilliams <[EMAIL PROTECTED]> wrote:
>> >> All,
>> >>
>> >> I'm looking to output every piece of data from the database line 
>> by line.  Is there any
>> >> methody by which 'mysqldump' can output the following?:
>> >>
>> >>
>> >> use  MY_DATABASE;
>> >>
>> >> CREATE TABLE IF NOT EXISTS MY_TABLE;
>> >>
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >> ALTER IGNORE TABLE MY_TABLE ADD MY_COLUMN [properties]
>> >>
>> >> INSERT IGNORE . . . .
>> >> INSERT IGNORE . . . .
>> >> INSERT IGNORE . . . .
>> >> INSERT IGNORE . . . .
>> >> INSERT IGNORE . . . .
>> >> INSERT IGNORE . . . .
>> >> INSERT IGNORE . . . .
>> >>
>> >>
>> >>
>> >> The most important of the features above are the ability to 
>> CREATE a table only if it 
>> doesn't
>> >> exist (I never want to drop because the same script will be used 
>> for syncing) and the 
>> ability to
>> >> have 'mysqldump' be "smart" and output ALTER IGNORE statements. 
>> Any asistance would 
>> be
>> >> greatly appreciated.
>> >>
>> >> Regards,
>> >> Michael
>> >>
>> >> --
>> >> 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