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
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.
Making a complete dump and importing in the target wiki is probably the
easiest. But you will have problems with merging the users. Colliding
usernames, user ids WILL collide, if you change an user id, the password
authentication will fail (the password is hashed with the user id)...