Resolve the server_id precheck failure

Updated at:

Before Data Transmission Service (DTS) starts incremental data migration between MySQL databases, it prechecks the server_id parameter in the source database. DTS relies on the MySQL binary log (binlog) for incremental data migration, which requires a valid server_id. This topic explains how to fix the server_id value to pass the precheck.

Solution

  1. Log on to the server where the source self-managed MySQL database is deployed.

  2. Check the current server_id value:

       show variables like '%server_id%';
  3. If server_id is not an integer greater than 1, set it to a valid value:

       set global server_id=<id>;

    Replace <id> with an integer greater than 1. For example:

       set global server_id=2;
    Important
    • The server_id value must be an integer greater than 1 and unique across all databases in the replication topology.

    • If the database runs in primary/secondary mode, verify that changing server_id does not disrupt the existing primary/secondary replication.

    • The set global command only takes effect at runtime. Update the server_id value in the MySQL configuration file (my.cnf or my.ini) to persist the change across database restarts.

  4. Log on to the and run the precheck again.