在开发数据库、设计API或搭建分布式系统时,你一定会遇到一个问题:如何为每一条数据生成一个唯一的ID?自增整数ID虽然简单,但在数据合并、分库分表时容易冲突。UUID就是解决这个问题的方案。本文将带你了解UUID的原理和正确用法。
一、UUID是什么?
UUID的全称是通用唯一识别码,是一个128位的数字,通常用32个十六进制数表示,形式如xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx。它的核心价值在于可以在不依赖中央服务器的情况下,在分布式系统中生成几乎不可能重复的唯一标识符。这意味着你电脑上生成的UUID,和世界上任何其他电脑生成的UUID,重复的概率极低。
二、UUID的版本与选择
UUID有多个版本,最常用的是版本4,基于随机数生成,除了少数位用于标识版本外,其余122位完全由随机数填充,安全性高,难以猜测。版本1基于时间戳和MAC地址生成,趋势递增但会暴露生成时间和计算机身份。在日常开发中,版本4是绝大多数场景下的首选。
三、UUID的应用场景
数据库主键:特别是在分库分表、数据需要合并的场景下,自增ID无法保证全局唯一,UUID是理想选择。分布式系统追踪:为一次完整的用户请求生成唯一的Trace ID,贯穿各个微服务,便于问题排查。文件名生成:用户上传图片、文件时,用UUID重命名,彻底避免重名覆盖问题。会话标识与API密钥:作为难以猜测的令牌,用于识别用户身份或验证API请求。
四、使用一页共享快速生成UUID
当你需要批量生成唯一标识符时,打开一页共享的UUID生成器,选择生成数量,可以一次性生成1个、10个甚至100个UUID。每个UUID都是标准的版本4格式。一键复制全部结果,可以直接粘贴到数据库插入语句、代码变量或测试数据中使用。

