UUID 生成器

Blog

UUID 生成器

BlogCheatsheets
Loading...
Loading UUIDs generator...

描述

生成所有版本的UUID:NIL(全零)、v1(基于时间)、v3(基于名称MD5)、v4(随机)、v5(基于名称SHA-1)。支持批量生成(最多50个)以及v3/v5的自定义命名空间。

关于 UUID 生成器

UUID 生成器可直接在你的浏览器中创建各个版本的通用唯一标识符——NIL、v1(基于时间)、v3(基于名称的 MD5)、v4(随机)和 v5(基于名称的 SHA-1)。UUID 是一个 128 位的值,写作 36 个字符(例如 550e8400-e29b-41d4-a716-446655440000),其唯一性足以在无需中央机构的情况下进行分配。你可以一次生成一个或多个,用于数据库键、请求 ID 或测试数据。

使用方法

  1. 选择你需要的 UUID 版本(v4 随机版本最常用)。
  2. 对于 v3/v5,请提供一个命名空间和一个名称——相同的输入总是产生相同的 UUID。
  3. 设置要生成的数量(批量最多 50 个),然后点击生成。
  4. 复制单个值或整个列表。

示例

示例输入输出
v4(随机)9b2e4f6a-1c3d-4e5f-8a7b-2c1d0e9f8a7b
NIL00000000-0000-0000-0000-000000000000

常见问题

我应该使用哪个 UUID 版本?

v4(随机)是大多数应用的默认选择——键、请求 ID、令牌。当你需要从名称派生出确定性 UUID 时使用 v5。v1 嵌入了时间戳和 MAC 地址,如今很少需要。

随机(v4)UUID 真的唯一吗?

实际上是的。v4 UUID 拥有 122 个随机位,因此即使在数十亿个值之间,发生碰撞的概率也微乎其微。它们在这里使用浏览器的加密随机源生成。

UUID 和 GUID 有什么区别?

实际上没有区别。GUID(全局唯一标识符)是微软对同一 128 位标准的称呼;两种格式可以互换使用。

UUID 可以用作数据库主键吗?

可以,不过随机的 v4 UUID 可能会使 B-tree 索引碎片化。如果插入顺序很重要,可以考虑使用像 ULID 这样可按时间排序的标识符。