Replication with Global Transaction Identifiers a  transaction_id  of  10 . It is not possible for a transaction to have  0  as a sequence number in a GTID. For example, the twenty-third transaction to be committed originally on the server with the UUID 3E11FA47-71CA-11E1-9E33-C80AA9429562  has this GTID: 3E11FA47-71CA-11E1-9E33-C80AA9429562:23 The upper limit for sequence numbers for GTIDs on a server instance is the number of non-negative values for a signed 64-bit integer (2 to the power of 63 minus 1, or 9,223,372,036,854,775,807). If the server runs out of GTIDs, it takes the action specified by  binlog_error_action . From MySQL 8.0.23, a warning message is issued when the server instance is approaching the limit. The GTID for a transaction is shown in the output from  mysqlbinlog , and it is used to identify an individual transaction in the Performance Schema replication status tables, for example, replication_applier_status_by_worker . The value stored by the  gtid_next  system variable ( @@GLOBAL.gtid_next ) is a single GTID. A GTID set is a set comprising one or more single GTIDs or ranges of GTIDs. GTID sets are used in a MySQL server in several ways. For example, the values stored by the  gtid_executed  and gtid_purged  system variables are GTID sets. The  START REPLICA | SLAVE  clauses  UNTIL SQL_BEFORE_GTIDS  and  UNTIL SQL_AFTER_GTIDS  can be used to make a replica process transactions only up to the first GTID in a GTID set, or stop after the last GTID in a GTID set. The built-in functions  GTID_SUBSET()  and  GTID_SUBTRACT()  require GTID sets as input. A range of GTIDs originating from the same server can be collapsed into a single expression, as shown here: 3E11FA47-71CA-11E1-9E33-C80AA9429562:1-5 The above example represents the first through fifth transactions originating on the MySQL server whose server_uuid  is  3E11FA47-71CA-11E1-9E33-C80AA9429562 . Multiple single GTIDs or ranges of GTIDs originating from the same server can also be included in a single expression, with the GTIDs or ranges separated by colons, as in the following example: 3E11FA47-71CA-11E1-9E33-C80AA9429562:1-3:11:47-49 A GTID set can include any combination of single GTIDs and ranges of GTIDs, and it can include GTIDs originating from different servers. This example shows the GTID set stored in the  gtid_executed  system variable ( @@GLOBAL.gtid_executed ) of a replica that has applied transactions from more than one source: 2174B383-5441-11E8-B90A-C80AA9429562:1-3, 24DA167-0C0C-11E8-8442-00059A3C7B00:1-19 When GTID sets are returned from server variables, UUIDs are in alphabetical order, and numeric intervals are merged and in ascending order. The syntax for a GTID set is as follows: gtid_set : uuid_set  [,  uuid_set ] ... | ’’ uuid_set : uuid : interval [: interval ]... uuid : hhhhhhhh - hhhh - hhhh - hhhh - hhhhhhhhhhhh 3452 GTID Sets