Q: How do I handle the precheck error "The source database account lacks the sysadmin permission"?
Description: The source database is SQL Server and an incremental migration task is configured. The precheck fails and the system prompts "The source database account lacks the following permission: sysadmin". sysadmin refers to the system administrator permission.
Cause: The source database of the incremental migration task is SQL Server, and the source database account is not granted the sysadmin permission. Incremental migration requires the source database to have the sysadmin permission. Otherwise, DTS cannot retrieve the source database logs.
Solution: Grant the sysadmin permission to the source database account.
If the source database is a self-managed SQL Server, grant the sysadmin permission to the account yourself.
If the source database is ApsaraDB RDS for SQL Server, provide your Alibaba Cloud account UID to Alibaba Cloud technical support to help grant the permission, or log on to the ApsaraDB RDS for SQL Server console, go to the instance details page, and click Account Management > Create Account. On the Create Account page, select the privileged account (that is, the account with the sysadmin permission).
Q: How do I handle the precheck error "The check for the existence of accounts with different names failed"?
Description: The precheck item "Check for the existence of accounts with different names" fails. This check item verifies whether different usernames are used on the same instance, and the check result is failed.
Cause: The migration or synchronization tasks on the same instance are configured by using multiple accounts, which causes the task precheck to fail. DTS does not support the mode in which multiple accounts are used to configure multiple migration tasks on the same instance.
Solution: Log on to the DTS console and reconfigure the tasks to make sure that the same account initiates all the tasks.
Q: How do I handle the precheck error "Failed to connect to the source or destination database"?
Description: When you configure a migration or synchronization task, the connectivity tests for both the source and destination databases succeed. However, in the precheck phase of the task, the precheck fails and the system prompts "Failed to connect to the source or destination database". In the precheck, the source database connectivity check fails, with the failure reason "Connection failed because the account or password of the source database is incorrect" and the error code
DTS-002010.Cause: The whitelists of the source and destination databases are not configured, or are configured but incomplete. As a result, the DTS instance nodes cannot connect to the source or destination database. This issue is more likely to occur in cross-region migration or synchronization tasks, or when the source database is a self-managed database.
Solution: Modify the task configuration, enter the correct account and password, and then run the precheck again; configure the whitelist information for the source or destination database; or contact Alibaba Cloud technical support to help troubleshoot network issues and then retry.
Q: How do I handle a warning from the precheck item "Check for objects with the same name"?
Description: A warning is generated by the check for objects with the same name during the precheck phase when you configure a synchronization or migration instance.
Cause: The destination database of the DTS task contains schema objects that have the same names as those in the source database (for example, the destination MySQL database contains tables with the same names as those in the source database). In addition, during the Configure Objects and Advanced Settings phase, the handling mode for tables that already exist in the destination database is set to Precheck and Report Error to Block.
Solution: On the Precheck page, click Confirm Warning Details next to the check item to view the failure reason. Then, check whether schema objects with the same name exist in the destination database, and choose a handling method based on your actual situation.
Schema objects with the same name exist:
If you need to keep the data in the destination database: You can use the mapping feature to change the name of the object in the destination database; rename the existing object in the destination database and then run the precheck again; or return to the Configure Objects and Advanced Settings phase and remove the object from the Selected Objects section.
If you do not need to keep the data in the destination database: Delete the existing object in the destination database and then run the precheck again; or click Confirm Ignore, click OK, and then click Run Precheck Again to ignore the warning. Make sure that the data structures are compatible. Otherwise, data inconsistency or even task failure may occur.
No schema objects with the same name exist: In the details dialog box, click Close. Then, on the Precheck page, click Run Precheck Again and wait for the precheck to complete. If the warning persists after multiple retries, contact Alibaba Cloud technical support.
Q: How do I handle a warning from the precheck item "Check for existing data in destination database objects"?
Description: A warning is generated by the check for existing data in destination database objects during the precheck phase when you configure a synchronization or migration instance.
Cause: The databases or tables in the destination of the DTS task contain existing data (for example, the destination ApsaraDB for Redis database that receives data contains data). In addition, during the Configure Objects and Advanced Settings phase, the handling mode for tables that already exist in the destination database is set to Precheck and Report Error to Block.
Solution: On the Precheck page, click Confirm Warning Details next to the check item to view the failure reason. Then, check the existing data in the destination and choose a handling method based on your actual situation.
If you need to keep the data in the destination: Return to the Configure Objects and Advanced Settings phase, and use the mapping feature to synchronize or migrate the data to another database or table in the destination; or remove the object from the Selected Objects section so that it is not synchronized or migrated.
If you do not need to keep the data in the destination: Delete the existing data in the destination and then run the precheck again; or click Confirm Ignore, click OK, and then click Run Precheck Again to ignore the warning.
Q: How do I handle a warning from the precheck item "Long transaction detection on the source database"?
Description: A warning is generated by the long transaction detection on the source database during the precheck phase when you configure a synchronization or migration instance.
Cause: The source database is PostgreSQL, PolarDB for PostgreSQL, or PolarDB (Oracle-compatible), and the source database contains long transactions that have not been committed for more than 5 minutes.
Solution: Log on to the source database and run the following command to view the long transactions. Then, manually commit or roll back the long transactions when your business allows. Finally, return to the Precheck page and click Run Precheck Again.
SELECT pid, usename, datname, query, state, EXTRACT(EPOCH FROM (NOW() - xact_start)) as duration FROM pg_stat_activity WHERE state IN ('idle in transaction', 'active') AND (NOW() - xact_start) > INTERVAL '300 seconds' ORDER BY xact_start;
Q: Why is a warning generated for the Redis eviction policy check item?
A: If the data eviction policy (
maxmemory-policy) of the destination is set to a value other thannoeviction, the data in the destination may become inconsistent with that in the source. For more information about data eviction policies, see Introduction to Redis data eviction policies.Q: How do I handle the failure of binlog-related precheck items during incremental data migration?
A: Check whether the binlog of the source database is normal. For more information, see Source database binary log checks.