A brief introduction: Today to talk minlog of table_id
Two specific analysis features
1 table_id is not fixed, it is when the table is loaded into memory (table_definition_cache), temporary assignment, the variable is a growing
2 When the new table is changed, not in the cache, it will trigger the operation of a load table def, this time will be in the last table_id original id + 1 basis, as the new table def.
3 flush tables, table after the update operation will trigger the growth of table_id.
4 If the table def cache is too small, there will be frequent swapped out, leading to faster growth table_id.
5 Restart the main library table_id return 0
table_id 6 same table is not been the same, remember, this thing is not defined in the table something that is something operating table
Three experimental observation
show binlog events in 'mysql-bin' table_id changes were observed in each case
Meaning four of table_id
1 has any of its meaning of a thing, the table_id is the same, its role is frequent contact DML operation table structure and ties. Table_map_event binlog is contained in the (internal ID and a description of the table structure definition)
2 If you insert a data update of 10000, the table structure information corresponding to the need to record 10,000 columns? In fact, on the same operating table, so that only records binlog Table_map a table structure for recording information, while the back row Write_rows recording information update data. Between them through the table_id to contact.
Table_id. 3 used for hash key, by the method set_table (table_id) of the entire hash table into the cache; table_id and can be obtained according to information corresponding to the table by get_table () method.
Four summary
Articles and some of their own summary article from the Internet. If any problem, you can leave a message, I will be processed