Some time ago, I volunteered to migrate a white label implementation of a Drupal 6 site that is destined to be shut down and merge its data into another Drupal 6 site that uses (mostly) the same content types and structures. I had it all mapped out. It would be easy. Just a few lines of code, some mySQL queries, and we’d be done with it.
It turns out that merging into an existing Drupal site where you want to keep the data from being overwritten is more of a big-ish deal than I thought.
Fortunately, there are great tools out there to help with this, and the one I chose to use is the Drupal Migrate module. Even though this module is designed primarily to migrate D5, D6 (and earlier) sites into D7, there is a D6 version of the module, and it doesn’t care what the source is, so you can use it to merge/migrate between two same-version Drupal sites. It’s not standard operating procedure, but it’s supported, but it’s a barely-documented scenario, hence this series of posts.