Thi*_*yão 5 postgresql random time uuid
根据postgresql uuid-ossp文档uuid_generate_v1()是基于Mac地址+时间戳:
https://www.postgresql.org/docs/9.4/static/uuid-ossp.html
在分布式数据库场景中,我们有数百个数据库使用 UUID 键生成记录并同步回中央数据库。
假设我们检测到一台机器将来的日期/时间错误,我们将其改回正确的日期/时间。它可能会在此特定计算机上生成冲突的 UUID 密钥吗?
一种情况是夏令时/夏令时。
据我所知,没有理由使用uuid_generate_v1()over uuid_generate_v4()。也就是说,Phil\xe1\xb5\x80\xe1\xb4\xb9 当他说时基本上是正确的
\n\n“一种情况是夏令时/夏令时。” - 不它不是。所有内容均应存储为 UTC。时间总是在前进。\xe2\x80\x93 菲尔\xe1\xb5\x80\xe1\xb4\xb9
\n
即使您的显示时间设置为 DST(或类似 CSTCDT),底层存储机制也应该是 UTC。
\n也就是说,虽然所有内容都应存储为 UTC,但情况并非总是如此。也有例外,例如 XP 或 Windows 7,您可能会看到某种异常,特别是如果您允许其他操作系统修改 RTC。
\n而且,如果你真的想挑剔的话,总是存在闰秒的问题,当某些内核或守护进程会回滚秒时,基本上取决于他们是否支持这一点。Linux-proper 和 OSX 确实如此,Android 却没有在闰秒上进行幽默的 NDT
\n\n作为参考,该规范详细介绍了生成 UUID v1 基于时间的 UUID 的过程,4.2 创建基于时间的 UUID 的算法。
\n| 归档时间: |
|
| 查看次数: |
1604 次 |
| 最近记录: |