什麼是UUID 產生器?
產生 v4(隨機)、v7(依時間排序)、v1(時間戳加節點 ID)、v8(自訂布局)與 v5(基於命名空間且可重現)等格式的全域唯一識別碼。可單筆或批次產生 UUID、驗證任何 UUID,或從命名空間與名稱衍生穩定 ID — 適用於資料庫主鍵、API Token、測試資料與分散式系統。
若需要完全隨機的 ID 請選 v4;若希望 ID 依建立時間排序(讓資料庫索引更緊湊、日誌時間線更易讀)請選 v7;若需要經典的時間戳加節點 ID 請選 v1;若需要 RFC 9562 自訂布局請選 v8。若要從命名空間與名稱字串確定性衍生則選 v5。驗證面板會解析任何 UUID,顯示其版本、變體與(若存在)嵌入的時間戳。一次最多產生 1000 筆,可切換大寫、依行或整批複製,並以純文字、試算表 CSV、JSON 陣列或可直接執行的 SQL INSERT 語句匯出。
使用方法
- 步驟 1 — 選擇模式:v4 完全隨機、v7 依時間排序、v1 為時間戳加節點 ID、v8 為自訂/實驗性布局、v5 為基於命名空間的確定性 ID,或驗證模式檢查既有 UUID。
- 步驟 2 — v4/v7 輸入所需數量(1 到 1000);v5 選擇命名空間並輸入要雜湊的名稱;驗證模式則貼上 UUID 並按驗證。
- 步驟 3 — 複製單筆或整批 UUID,視需要切換大寫,並以文字、CSV 或 JSON 下載。
何時使用
- 首次資料庫遷移之前,批次生成測試用主鍵。
- 為分散式系統的 API token、裝置識別碼之類的場景生成 ID。
- 建立 session ID、追蹤 ID、日誌聚合用的關聯 ID。
結果
您正在為測試資料庫填入種子資料,需要 50 個唯一主鍵。選擇 UUID v4,數量設為 50,點選產生並全部複製——每個 UUID 都是加密隨機產生的,碰撞風險可忽略不計。
常見問題
- UUID v4、v5 與 v7 有什麼差別?
- v4 是 122 位元的純亂數,沒有任何結構。v5 透過 SHA-1 對命名空間 UUID 與名稱字串進行雜湊,因此相同輸入永遠產生相同 UUID,非常適合從電子郵件或網址衍生確定性 ID。v7 將 48 位元毫秒時間戳放在開頭、其後接亂數位,因此 v7 清單會依時間排序,適合在意插入順序的資料庫主鍵。
- UUID 真的不會重複嗎?
- 以每秒生成 10 億個 v4 UUID 連續產出 85 年計算,出現一次重複的機率約莫只有 50%。一般業務量下基本可以視為不會重複。
- 資料庫主鍵該不該用 UUID?
- 分散式系統中協調自增主鍵很麻煩,UUID 是合理選擇。優先用 v7 而非 v4——純隨機的 v4 會讓 B 樹索引碎片化,而 v7 的時間前綴能讓新資料集中在索引尾端。
- 把 UUID 放在公開網址裡安全嗎?
- v4 無法被猜到,可以當作分享連結或密碼重設權杖這類「弱密鑰」使用。v7 會洩露建立時間,如果不希望暴露時間資訊,公開識別碼請選 v4。
- 可以把 UUID 縮短用在網址裡嗎?
- 把 128 位元原始位元組改用 base32 或 base62 編碼,可以縮到 22 至 26 個字元,唯一性完全相同,但視覺上乾淨許多。標準格式中的短橫線只是顯示慣例,移除並不影響資料。