温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

UUID是什么数据库标识符

发布时间:2026-07-01 16:46:06 来源:亿速云 阅读:89 作者:小樊 栏目:数据库

UUID(Universally Unique Identifier,通用唯一识别码) 并不是某个数据库“专属”的标识符,而是一种通用标准(RFC 4122),用于在分布式系统中唯一标识一条数据。

一句话理解

UUID 是一种全球几乎不可能重复的唯一 ID,通常用于主键或业务唯一标识。


一、UUID 是什么样子的?

常见格式(36 个字符 + 4 个连字符):

550e8400-e29b-41d4-a716-446655440000

它本质是 128 位的整数。


二、UUID 在数据库中的角色

在数据库中,UUID 常被用作:

1️⃣ 主键(替代自增 ID)

CREATE TABLE user (
  id UUID PRIMARY KEY,
  name VARCHAR(50)
);

插入:

INSERT INTO user VALUES (gen_random_uuid(), 'Tom');

三、为什么数据库会用 UUID?

✅ 优点

  • 全局唯一:不依赖单个数据库实例
  • 适合分布式系统:微服务、分库分表
  • 不暴露数据量:比 id=1001 更安全
  • 可在应用层生成:减少数据库压力

❌ 缺点

  • 占用空间大(36 字节 vs 自增 int 4 字节)
  • 索引性能较差(插入随机,导致页分裂)
  • 可读性差

四、UUID 的常见版本

版本 说明 使用场景
UUID v1 基于时间戳 + MAC 少用(泄露机器信息)
UUID v4 随机生成 ✅ 最常见
UUID v7 时间有序 ✅ 数据库推荐

⚠️ UUID v7 是近年新标准,兼顾唯一性和索引性能。


五、UUID vs 自增 ID(常见对比)

对比项 UUID 自增 ID
唯一性 全局 仅当前表
分布式
性能 一般
可读性
安全隐患 可能暴露数据量

六、什么时候该用 UUID?

推荐使用场景

  • 微服务
  • 分库分表
  • 多系统数据同步
  • 需要提前生成 ID

不推荐使用场景

  • 高并发写入 + 极高性能要求
  • 数据量巨大且对空间敏感

七、总结一句话

UUID 是一种数据库里常见的全局唯一标识符,常用于替代自增主键,特别适合分布式系统。

如果你愿意,我也可以帮你对比:

  • UUID vs Snowflake
  • 各数据库(MySQL / PostgreSQL / MongoDB)中 UUID 的最佳用法
  • UUID v4 vs v7 的性能差异
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI