[Mediawiki-l] Merging two separate MediaWiki installations into one

Michael Daly michaeldaly at kayakwiki.org
Thu Jul 26 21:47:55 UTC 2007


Brandon Dudley wrote:
> Anyone have any ideas at all about how to accomplish this? Or is this 
> topic verboten? :)

Not verboten, just a challenge to answer.

I can't address all the items, but I know that the problems will be with 
things like matching various key fields in the database.  For example, 
users are connected to articles via the user_id.  This is an integer 
that starts at 1 and is incremented for each added user.   Since it is 
not a GUID, the two wikis you're dealing with will have duplicate 
user_ids.  You will have to sort that out before merging.

Similar for page_ids, rev_ids etc.  I suppose you could take the maximum 
value of one wiki's xxx_id and do an update to the other wiki's table to 
change the xxx_id to xxx_id + max (shifting it out of the first wiki's 
range) for every relevant table.

I'll leave it to you to decide if it is easier to work with the data in 
the SQL tables or with a dump into a text file of some sort (*.sql or 
xml etc).

I can't tell you all the details without going through the database 
design, but I'm guessing there are a couple of other gotchas.  However, 
you are likely not the first to do this, so there may be a script 
somewhere that will take care of this for you.

Mike






More information about the MediaWiki-l mailing list