Why mysql row_id is 6 bytes? Why is 8 bytes

mysql row_id a few bytes?

row_id

InnoDB table in the case where no default primary key generated automatically increase the primary key of a 6-byte space

row_id is an integer or character?

Row_id is ib_uint64_t source code
which is 8 bytes is shaped uint64_t

Why is 6 bytes?

Base64 encoding the PS description
Base64 encoding requires the three 8-bit bytes (3 8 = 24) is converted into four 6-bit bytes (4 6 = 24), then in front of the two's complement 0 6, 8 is formed in the form of a byte. If the remaining characters is less than 3 bytes are filled with zeros, the output of the character using the '=', so after the end of the text encoded output may occur one or two '='. In order to ensure that coded bits output from the readable characters, Base64 encoding developed a table, for uniform conversion. Coding table size is 2 ^ 6 = 64, which is the origin of the name Base64.

Published 257 original articles · won praise 223 · views 320 000 +

Guess you like

Origin blog.csdn.net/csdn_kou/article/details/103123805