Before data migration, Data Transmission Service (DTS) checks whether DTS servers can connect to the source database to avoid failures at migration time. This topic describes causes of check failure and how to fix the failure.

The connectivity check may fail due to the following reasons.

The database account or password is incorrect

Troubleshooting:

To verify that the specified account and password are correct, you can log on to the target database from a remote database client, using the account and password.

Note If the source database is a user-created database, you can also log on locally from a client on the server where the source database resides.

Solution:

Log on to the DTS console, enter the correct account and password, and perform another precheck.

The source instance blocks access from external IP addresses

Troubleshooting:

  • If your source database is a user-created database, you can log on to the server that hosts the database system and initiate a database logon session locally from that server. If you can log on locally from the source server, it means that the source database does not allow access from external IP addresses.
  • If the source database is a MySQL database, you can use a MySQL client to connect to the database and run the following statement:
    SELECT HOST FROM mysql.user WHERE user='username',password='password';
    Note Replace the username and password placeholders with the database account and password specified for the data migration task.

    Check whether the authorized IP address list includes the IP addresses of the DTS servers. For more information, see Whitelist DTS IP addresses for your user-created database.

  • If the source database is an SQL Server database, check whether a firewall is enabled for the server where the database resides. You can also check whether endpoints or triggers in the source database disallow access from external IP addresses.
  • If the source database is an Oracle database, check whether the TCP.VALIDNODE_CHECKING parameter in the sqlnet.ora configuration file is set to yes. If the parameter is set to yes, it means that the source database blocks access from external IP addresses.

Solution:

  • For a source MySQL database: run the following statement to authorize the database account again:
    GRANT ALL ON . TO 'username'@''%' IDENTIFIED BY 'password';
    Note Replace the username and password placeholders with the account and password that are specified in the data migration task.
  • For a source SQL Server database: disable the triggers that block access from external IP addresses. Additionally, add DTS IP address ranges to the firewall rules or temporarily disable the firewall during migration.
  • For a source Oracle database: set the TCP.VALIDNODE_CHECKING parameter to no and restart the Oracle Net Listener process.

Log on to the DTS console to perform another precheck.

A firewall is enabled on the source database server

Troubleshooting:

  • If the server where the source database resides runs Windows, find Windows Defender Firewall from the Control Panel to check whether a firewall is enabled for the server.
  • If the server where the source database resides runs Linux, run the iptables -L command in the shell to check whether a firewall is enabled for the server.

Solution:

Add DTS IP address ranges to the firewall rules or temporarily disable the firewall during migration. Then, log on to the DTS console to perform a precheck again.

The network is unavailable

If the connectivity check failure persists after you perform the preceding troubleshooting steps, the network between DTS servers and the source database may be unavailable. You can contact Alibaba Cloud Customer Services by submitting a ticket.