I've done this a couple of times through the years. You've simply got to be meticulous about every facet of GoldMine (from a data perspective), fleshing out the details. A big help is if they can provide input as to what's truly important or not; otherwise, you might end up spending valuable and costly time on something that's not important or needed.
Once they provide feedback, cut out all they deem non-important or not wanted. THEN, grind through the rest accordingly.
Most components can be fairly easily "merged" into a single system. The challenge will be "similar" items that have been changed differently on the two systems (e.g. merge template by same name/filename, but changed differently, report by same name/filename, but changed differently, etc.). Custom fields can prove a time consumer as well, depending on their realities.
Wish there was a magic bullet, but it's all about the details. ;-)
Here's an idea. I agree with John "A big help is if they can provide input as to what's truly important or not;" then depending on what you need rather than move and copy all the records you may consider using the GM+View to present information that exists in the fathers database.So you could leave the father's SQL database alone once on the sons SQL server and view information via the GM+View tab where duplicates exist. Do a compare of some simple data to show which live customer records are not duplicate and import light information in to the sons main database (Contact1 & Contact2). Over time use the Father's database as a leads database and copy move any records converted to prospects.
Hope that helps.
Beside the above said you should first compare the contact2 tables of the 2 databases of GM.
If you find any missing field on one of them you should create it
You also have to compare data type of the fields and their length.
Check if they are using the fields for the same purpose.
The second thing you should do is to place in all contact records of one of the database some data to know where that record came from.
Just getting back to this. I have never created a GM+View using SQL. Do you have an example you can send to me?