what is the issue if two different databases have the same id?
Picture a distributed application and database system that allowed you to place Orders for certain Products, like the Amazon mobile app. Let's pretend the app allowed offline functionality for when people had bad cell service, such as being able to place an Order offline. And then the next time they're online, that Order gets synced from the local database on their mobile device to the central database on Amazon's servers.
If the app was designed to use an auto-increment column as the key, let's call it OrderId, that got generated locally when the device was offline, it would be possible for two different people to generate the same OrderId for two completely different and unrelated Orders. Hopefully that's clear how that's a problem when they go to sync to the centralized database on Amazon's servers.
A GUID is a decent solution to this problem, since the chance of collisions (the same value being generated twice globally) is relatively low.
Of course there are other solutions than using GUIDs such as error handling the collisions of two auto-increment IDs. But that may require more thought and work than using a GUID. But there are alternative solutions, which come down to preference, all things considered.