原文:【實戰】為什么不用UUID做主鍵?

不易於存儲:UUID太長, 字節 位,通常以 長度的字符串表示,很多場景不適用。 信息不安全:基於MAC地址生成UUID的算法可能會造成MAC地址泄露,這個漏洞曾被用於尋找梅麗莎病毒的制作者位置。 ID作為主鍵時在特定的環境會存在一些問題,比如做DB主鍵的場景下,UUID就非常不適用: MySQL官方有明確的建議主鍵要盡量越短越好 , 個字符長度的UUID不符合要求。 對MySQL索引不利:如果 ...

2020-09-17 16:34 0 712 推薦指數:

查看詳情

mysql5.5 uuid做主鍵與int做主鍵的性能實測

偶然的機會,得知mysql主鍵的類型采用 varchar 存UUID 的查詢性能沒有int型做主鍵好。網上查詢大量資料,都是停留在理論上的,因此,自己寫了代碼進行實測,以下結果僅供參考,不具備權威性。 三個表的字段,除了主鍵ID 分別采用varchar,bigint 和自動增長bigint ...

Fri Sep 29 03:44:00 CST 2017 0 2003
mysql5.5 uuid做主鍵與int做主鍵的性能實測

數據庫:mysql5.5 表類型:InnoDB 數據量:100W條 第一種情況: 主鍵采用uuid 32位。 運行查詢語句1:SELECT COUNT(id) FROM test_varchar; 運行查詢語句2:SELECT * FROM test_varchar ...

Mon Aug 05 17:43:00 CST 2013 0 5677
使用Guid做主鍵和int做主鍵性能比較

使用Guid做主鍵和int做主鍵性能比較 在數據庫的設計中我們常常用Guid或int來做主鍵,根據所學的知識一直感覺int做主鍵效率要高,但沒有做仔細的測試無法 說明道理。碰巧今天在數據庫的優化過程中,遇到此問題,於是做了一下測試。 測試環境:   台式電腦 Pentiun(R ...

Fri Nov 11 23:23:00 CST 2016 2 4164
GUID做主鍵真的合適嗎

  在一個分布式環境中,我們習慣使用GUID做主鍵,來保證全局唯一,然后,GUID做主鍵真的合適嗎?   其實GUID做主鍵本身沒有問題,微軟的很多項目自帶DB都是使用GUID做主鍵的,顯然,這樣做是沒有問題的。然而,SQL Server默認會將主鍵設置為聚集索引,使用GUID做聚集索引就有問題 ...

Tue Aug 27 07:24:00 CST 2019 1 1528
SQL GUID和自增列做主鍵的優缺點

我們公司的數據庫全部是使用GUID做主鍵的,很多人習慣使用int做主鍵。所以呢,這里總結一下,將兩種數據類型做主鍵進行一個比較。 使用INT做主鍵的優點: 1、需要很小的數據存儲空間,僅僅需要4 byte 。 2、insert和update操作時使用INT的性能比GUID好 ...

Mon Nov 17 20:47:00 CST 2014 3 14590
SQLSERVER如何使用遞增排序的GUID做主鍵

場景: 產品表數據量較大想用Guid做表的主鍵,並在此字段上建立聚簇索引。 因為Guid是隨機生成的,生成的值大小是不確定的,每次生成的數可能很大,也可能很小。這樣會影響插入的效率 1.NEWSEQUENTIALID和newid()的區別 NEWSEQUENTIALID() 和 NEWID ...

Sun Dec 04 03:10:00 CST 2016 0 3028
mysql將主鍵UUID改為bigint主鍵自增

修改結構,將主鍵UUID改為主鍵自增長 --創建備份表結構 -- 插入備份數據 -- 刪除原表數據 -- 修改主鍵類型,將varchar改為bigInt,並設置為自增長 -- 將備份數據出主鍵外的所有數據插入修改后的表 ...

Tue Nov 17 18:48:00 CST 2020 0 1710
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM