我们正在将我们的mongodb迁移到MySQL。我们的大多数客户端应用程序和基础结构都使用了24个字符的mongo id对象。我现在正在寻找一种方法,我可以在SQL中生成类似的唯一字符串。
我已经阅读了这个主题,有些帖子表明在sql中获取相同的mongo id是不可能的。
我知道MongoID包括: [自epoch以来的4个字节,3个字节的机器散列,2个字节的进程ID,3个字节的计数器]
我正在考虑编写一个名为get_mongo_id()的MySql函数,该函数将返回以下内容:
LEFT(SHA2(UUID(),256),24)
但是我担心它可能仍会导致重复,因为我只使用64个字符HASH中的前24个字符。
之前有没有人遇到过类似的问题?任何建议将不胜感激。
答案 0 :(得分:0)
您可以做的是将一个字符串作为主键并将其迁移。一切都应该是一样的,因为MySQL可以处理这个问题。你害怕存储问题吗?