All Products
Search
Document Center

:Solution to common errors reported by DTS

Last Updated:May 09, 2022

Overview

When you use Data Transmission Service Service (DTS), you may encounter various error messages. This topic describes how to resolve common error messages during use.

Details

The following table describes how to resolve common errors in the use of Data Transmission Service Service DTS. You can use the returned error message to match the solution in this topic.

Error codes Specific error messages Cause Solution
DTS-002003 DTS-002003 Connect db failure, unknow db url xx.xx.xx.xx:xx, please vaild url. Original error: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

Depending on the access method, the possible causes are as follows:

  • User-created database access: The database address or port is incorrectly entered. DTS does not connect to the user-created database.
  • Leased line access: You cannot connect to the database through a leased line.

Depending on the access method, the solution is as follows:

  • Self-built database access: Check the database address or port, test the connectivity of the specified database address or port, and correct the database address as needed.
  • Leased line access: Test the connectivity of the leased line. If the leased line fails, submit a ticket.

 

DTS-002004 DTS-002004 Connect db xx.xx.xx.xx:xx failure, Unknow db user user_name, please vaild user. Original error: original_error. The account used to create the DTS task is incorrect. Use an existing account, or create a new account.
DTS-002005 DTS-002005 Connect db failure, db user user_name password xxxx incorrect, Please vaild user info. Original error: original_error. Create a DTS task to use the destination database account or the password is incorrect. Verify that the account password is correct, and then use the correct account password to reconfigure the task.
DTS-002006 DTS-002006 Connect db ip:port failure, db user user_name_xx no connect permission, Please vaild user info. Original error: original_error. The account and password used to connect to the destination database are incorrect. Use the correct account and password to connect to the target database and verify that you can connect properly.
DTS-002007 DTS-002007 Connect db failure, client IP xxx.xxx.xx.xx is not not allowed to connect Server server_name. Original error: original_error. The account used by DTS does not have the permission to connect to the specified database. Authorize the relevant account or replace it with another database account that has the connection permission.
DTS-002008 DTS-002008 Connect db failure, unknow database name [$Database_name]. Original error: [$Original_error]. The database name in the connection information used to create the DTS task is invalid. Check whether the database name is correct. If the database name is incorrect, re-create a DTS task or update the task configuration.
DTS-002009 DTS-002009 Connect db xx.xx.xx.xx:xx timeout. Original error: original_error. Due to a network exception, the new database connection times out. Log on to the DTS console and restart the failed DTS task to try to recover.
DTS-002010 DTS-2010 Unknow connect db xx.xx.xx.xx:xx failure. Original error: original_error. DTS failed to connect to the database. The possible causes are as follows:
  • The username or password is incorrect.
  • The whitelist is incorrectly configured.
  • The network is abnormal.
  1. Check whether the username and password are correct.
  2. You must first configure the RDS whitelist as a 0.0.0.0/0.
  3. Contact network engineers to help troubleshoot network problems and try again.
DTS-1050003 DTS-150003 MySQL binlog timstamp 12345678 is not found on server. Original error: original_error.

According to the error message, the cause may be as follows:

  • If the task is suspended for more than seven days and the RDS log is cleared, you must create a new task.
  • The retention period of binary logs in the source database is too short. We recommend that you retain MySQL logs in the source database for at least three days.

According to the cause of the problem, the solution is as follows:

  • If the source database is a user-created MySQL database, you must restore the binary log files in the user-created database.
  • If the source database is an RDS instance, submit a ticket.

 

DTS-1050004 DTS-002004 Connect db xx.xx.xx.xx:xx failure, Unknow db user user_name, please vaild user. Original error: original_error. The account used to create the DTS task is incorrect. Use an existing account, or create a new account.
DTS-1050005 DTS-1050005 MySQL table xx.xx binlog column count check error, local count is 21, but binlog count is 22, at offset 9198@111547. The schema of the table corresponding to the log to be parsed in the binary log is inconsistent with that of the local storage table of DTS. As a result, the binary log fails to be parsed. The table schema is inconsistent with that of the DTS local storage table:
  • Cause 1: In the previous DDL statement for the table schema change, DTS parsing failure is ignored and skipped, and the table schema stored locally by DTS is not updated.
  • Cause 2: During full data migration or initialization, the source database business changes the table schema.

Grant the DTS source database account the query permission for the entire information_schema. For more information, see GRANT.

Note: If the issue is not resolved, submit a ticket to explain the last DDL statement and contact Alibaba Cloud technical support to reload the table schema stored in DTS.

DTS-1050007 DTS-002007 Connect db failure, client IP xxx.xxx.xx.xx is not not allowed to connect Server server_name. Original error: original_error. The account used by DTS does not have the permission to connect to the specified database. Authorize the relevant account or replace it with another database account that has the connection permission.
DTS-1050008 DTS-1050008 MySQL local table db_name.table_name meta not found
  • Data dictionary update error caused by DDL parsing failure of DTS.
  • During the creation of a DTS task, the corresponding DDL operation is triggered on the source database. As a result, the schema information queried by DTS is incorrect.
  • A bug exists when the MySQL log reader of DTS parses events.
    Note: This reason applies only to code-DTS-1050008 errors.

grants the DTS source database account the query permission on the entire information_schema. For more information, see GRANT. Re-execute the previous task to confirm that the problem has been solved.

Note: If the issue is not resolved, submit a ticket to explain the last DDL statement and contact Alibaba Cloud technical support.

DTS-1050009 DTS-1050009 MySQL binlog parse error, at offset filename@offset.
DTS-1050010 DTS-1050010 column db_name.table_name.column_name binlog parse error, at offset filename@offset.
  • Data dictionary update error caused by DDL parsing failure of DTS.
  • During the creation of a DTS task, the corresponding DDL statement occurs in the source database. As a result, the schema information queried by DTS is incorrect.
  • DTS connects to the MySQL database. A bug exists in the event parsing by MySQL log reader.
We recommend that you add information_schema query permissions to the DTS source database account.
DTS-1051001 DTS-1051001 Query remote MySQL instance xx.xx.xx.xx:xx table db_name.table_name meta fail. Original error: original_error. DTS may have a query timeout.

Locate the cause based on the Java driver error and resolve it.

Note: If the problem cannot be resolved, contact Alibaba Cloud technical support.

DTS-1051002 DTS-1051002 Current connect MySQL instance xx.xx.xx.xx:xx is not master. The MySQL logs of DTS show that the primary instance failed to be verified. The secondary instance may be used. Modify the task configuration and use the MySQL primary instance to reconfigure the task.
DTS-1051004 DTS-1051004 BEGIN and COMMIT middle have any other evetns, Please vaild binlog file. MySQL log BEGIN and COMMIT do not have valid DML operations. This issue occurs if the source database uses a read-only RDS instance. The reason is that the read-only RDS instance does not have binary logs. Therefore, incremental migration and synchronization cannot be performed. Check whether the source database is a read-only RDS instance. If the source database is a read-only RDS instance, you must use a non-read-only RDS instance to reconfigure the task.
DTS-1051005 DTS-1051005 MySQL Server xx.xx.xx.xx:xx select binlog list is empty, Please use sql: SHOW BINARY LOGS; vaild binlog list. The binary log list of the MySQL source database is empty and may not be enabled.

Check whether binary logging is enabled for the source MySQL database. You can run the following SQL statement to view the binary logs: If you do not enable binary logging, enable it manually.

SHOW BINARY LOGS;
DTS-1051006 DTS-1051006 MySQL Server [$IP]:[$Port], Table [$DB_Name].[$DB_table] is not exists. When you use DTS for data synchronization and change tracking, MySQL log reader verifies the binary log files in the source database. If DDL changes occur recently, the verification may fail. Check whether the schema of the data table has changed. If there is any change, you can perform DTS operations again after fixing the change. If the problem cannot be resolved, submit the table creation statement for the data table and the DDL statement that was recently executed. Contact Alibaba Cloud technical support to resolve the problem.
DTS-1051007 DTS-1051007 In binary log offset filename@offset(timestamp: unix_timestmap), found table db_name.table_name not full mode event. DTS only supports binlog_row_image='FULL' mode logs when you connect to MySQL. Solution for DTS connection to MySQL Reader log binlog_row_image verification failure
If you use DTS to migrate an RDS instance from another Alibaba Cloud account to the current account, the schema object fails to be obtained when the task is configured.

The failure of DTS to connect to the source RDS instance may be caused by the following two reasons:

  • Incorrect connection information.
  • The RDS instance is configured with a whitelist and does not add rules to the current DTS instance.
  1. For more information, see Migrate ApsaraDB for MongoDB instances across Alibaba Cloud accounts and Migrate ApsaraDB for MySQL instances across Alibaba Cloud accounts..
  2. Add a whitelist rule for DTS. For more information, see Configure a whitelist for your RDS instance.

Configuring an Oracle to MySQL Migration Task Times "java.sql.SQLException: Io, Exception: The Network Adapter could not establish the connection" Error

Generally, the Data Transmission Service service does not connect to the source Oracle database. When you encounter this problem, you need to run the netstat -ano command on the Oracle installation server to check whether the port of the Oracle database is configured with internal and external IP listeners. If this parameter is not specified, you must modify the Oracle listener service, restart the database service, and then create a migration task.
DTS data subscription report "java.io.IOException:Parse message attribute failed" error The DTS subscription channel can only query data within the last 24 hours. If the time point is not within this range, this error is reported. You can modify the consumption time point of DTS. For more information about how to modify the consumption time point, see Modify the consumption time point.
What do I do if the "Connection timed out" error message is displayed when I use the change tracking feature of DTS? The server used by the SDK sets context.setUsePublicIp(false); parameters.
  • Check whether the SDK server is set to context.setUsePublicIp(false);. If so, change it to context.setUsePublicIp(true);.
  • If the same subscription task starts multiple clients and only one client consumes data, the other clients are in the disaster recovery state.
When DTS starts the subscription SDK, the message "get guid info failed" This is due to the subscription channel ID that you set in the SDK incorrectly. Replace client.askForGUID in the sample code with the ID of the subscription channel that you want to subscribe to.
Specified signature is not matched with our calculation This error is due to incorrect AccessKeyID and AccessKeySecret that you configured in the SDK. We recommend that you regenerate a new AccessKeyID and AccessKeySecret, and then use the new AK to restart the SDK.
The data subscription startup SDK reports a "keep alive error" error. The SDK runs on a server that does not have a public IP address and cannot connect to the Data Transmission Service service server, or because the subscription channel's consumption time point is not within the subscription channel's data range. Create a public IP address, establish a public connection with the SDK, or modify the consumer offset again. For more information, see Modify the consumer offset of a subscription channel.
client partition is empty,wait partition balance
  • Data subscription starts slowly and usually takes several minutes. In this case, the client will prompt the "client partition is empty,wait partition balance" error.
  • If multiple downstream clients consume data in the same data subscription instance, only one client can subscribe to the data. Other Clients as Backup. In this case, these clients as Backup report a "client partition is empty,wait partition balance" error.
  1. Check whether the data subscription is being started. If the data subscription is being started, you only need to wait until the data subscription starts normally.
  2. If data subscription is started, you must check whether multiple clients consume data. If multiple clients consume data, Backup can be used only when the client that is subscribing to data is abnormal or when a network connection is abnormal. For more information, see Data subscription SDK disaster recovery.
Redis data synchronization reports a "Cannot read anything" error The source Redis instance configuration client output buffer is too small to cause log reading failure.

Log on to the ApsaraDB for Redis console and click Parameter Settings. On this page, adjust the client-output-buffer-limit parameters as follows.

client-output-buffer-limit slave 0 0 0

DTS full migration reports "java.sql.BatchUpdateException: INSERT, DELETE command denied to user 'user'" error full migration, if the INSERT, CREATE, or DELETE command permission issue is reported, the target RDS instance is locked and the account write permission is revoked.

First, recycle the log space of the destination RDS instance or upgrade the specifications of the destination RDS instance. Then, the retry function is triggered in the DTS console to restart the task at a breakpoint. For more information, see Fix failures.

Applicable scope

  • Data Transmission Service (DTS)