Michael Daly wrote:
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
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)...