For replication, yes, there will be a problem, but 
this has anything to do with mysql. You'd have the same 
problem with a Sybase identity field replicated to another 
database server. 

A possible solution is this:
1. have a separate table for generating counter fields.

2. make the replicated table's primary key char

3. Identify each replicated server with a character. 
For example, we have a server in NY that's identified 
with an 'N' and one in Miami, that's an 'M'.

4. When inserting a record get the next counter 
value from the counter table, concatenate it with 
the server identifier and voila, a key that's unique 
across replicated servers. NY server ids will look like
N1000, N1001, N1002 and Miami M1000, M1001, M1002 and so on.

The downside: you have a char field to index and that 
ain't as fast as an index on a numeric field.

Christopher Lambrou,
CGL Computer Services, Inc.
Empire State Building, 
PMB 16J Suite 3304 
New York, NY 10118
Tel: (212) 971-9723
Fax: (212) 564-1135
URL: http://www.cglcomputer.com
Email: [EMAIL PROTECTED]

On 5/3/2001 18:03:17, you said:
>This sounds encouraging, but are there any known problems with the MySQL
>replication model currently available?? Would the slave servers have the
>same auto_inc column attributes? Could this conflict somehow with the master
>server??
>
>Thanks for the quick reply!
>Patrick
>
># Personnaly, i have found autoincrement fields to be rock solid.
># I use'em all over the place on a 1 Gb database, web based.
># Don't do it manually .  You'll end up doing the same thing 
># that mysql gives you for free.   
>#  
># Christopher Lambrou,
># CGL Computer Services, Inc.
># Empire State Building, 
># PMB 16J Suite 3304 
># New York, NY 10118
># Tel: (212) 971-9723
># Fax: (212) 564-1135
># URL: http://www.cglcomputer.com
># Email: [EMAIL PROTECTED]
># 
># On 5/3/2001 15:57:38, you said:
># >Hello!
># >I have a database with about 10 tables in it. In every table I have a
># >RECORD_ID
># >field so that I can at least uniquely identify a row if I 
># need to, also its
># >used in relationships. The question is should I use the 
># AUTO_INCREMENT for
># >this, or should I manually generate this value, getting the 
># next highest
># >number, then putting it in there. Is there any known 
># replication problems if
># >I use AUTO_INCREMENT??? Would I be safer in just doing this 
># manually myself
># >in my code?? This is going to be a web-based app, so many 
># users will be
># >using the db at the same time.
># >Thanks!
># >
># >Patrick
># >
># >---------------------------------------------------------------------
># >Before posting, please check:
># >   http://www.mysql.com/manual.php   (the manual)
># >   http://lists.mysql.com/           (the list archive)
># >
># >To request this thread, e-mail <[EMAIL PROTECTED]>
># >To unsubscribe, e-mail 
># <[EMAIL PROTECTED]>
># >Trouble unsubscribing? Try: 
>http://lists.mysql.com/php/unsubscribe.php
>>
>>
>
>
>---------------------------------------------------------------------
>Before posting, please check:
>   http://www.mysql.com/manual.php   (the manual)
>   http://lists.mysql.com/           (the list archive)
>
>To request this thread, e-mail <[EMAIL PROTECTED]>
>To unsubscribe, e-mail
><[EMAIL PROTECTED]>
>Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php
>


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to