select uuid_short()
生成的爲一個64位無符號整數,可用字符串接受,其生成規則如下圖:
- 前面8個bit位一個字節的值server_id & 255
- 中間32位一共四個字節爲數據庫啓動時間戳,單位秒
- 最後24位3個字節爲自增變量值
可以通過**show variables like ‘%server_id%’**查看servr_id
在server_id爲0的條件下當前的時間戳爲1580000000000,對應秒1580000000,其左移24位的值爲26508001280000000,生成的大於此值,所以現在生成的uuid肯定不少於17位。
如果server_id=1,則2^56 + 26508001280000000 = 98465595317930000,此時uuid大於此值,隨着自增量的增大可能爲增加到18位。