全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
数据传输服务DTS

源库连接性检查

更新时间:2017-06-07 13:26:11

检测数据传输服务器是否能够连通要迁移的源数据库。数据传输服务通过JDBC协议创建到源数据库的连接,当创建连接失败时,这个检查项即失败。

当源库连接性预检查失败时,可能是由于如下几种原因:

  • 创建迁移任务时,提供的账号或密码不正确

    检测方法:在任何一台网络能够跟源数据库互通的服务器上,使用创建迁移任务时使用的账号/密码,通过客户端软件连接源数据库,确认是否能够正常连接。如果连接报错,且报错信息中含有Access deny,那么说明账号或密码有误。

    修复方法:在数据传输服务控制台修改迁移任务,将账号密码修改成正确的配置后重新预检查。

  • 源库迁移账号限制了来源IP

    检测方法:

    • 在一台网络能够跟源数据库连通的服务器上,使用创建迁移任务时使用的账号/密码,通过客户端软件连接源数据库,能够正常连接。此时说明源数据库限制了来源IP,只有源库迁移账号允许的服务器可以连接,而数据传输服务器的IP不在授权列表,所以不能正常连接。

    • 如果源数据库为MySQL数据库,那么直接使用MySQL客户端连接源数据库,执行select host from mysql.user where user=’迁移账号’,password=‘迁移账号密码’,如果查询结果不为”%”,那么说明数据传输服务器IP不在授权IP列表中,所以不能正常连接。

    • 如果是SQL Server,那么检查SQL Server安装服务器上是否设置了防火墙,或者检查源数据库中是否有endpoint或trigger限制了访问来源IP。

    • 如果是Oracle,那么检查源数据库的配置文件sqlnet.ora,确认配置项TCP.VALIDNODE_CHECKING是否为yes,如果为yes,说明源数据库限制了访问来源IP。

      修复方法:

    • 如果源数据库为MySQL,那么在源数据库中执行grant all on . to “迁移账号”@”%” identified by “迁移密码”给迁移账号重新授权。这个命令中的迁移账号用真实的迁移账号替换,迁移密码用真实的迁移密码替换。授权后重新进行预检查。

    • 如果源数据库为SQL Server,那么需要先关闭掉防火墙或禁用掉trigger后,重新进行预检查。

    • 如果源数据库为Oracle,那么先修改TCP.VALIDNODE_CHECKING=no并重启监听后,重新进行预检查。

  • 源数据库安装服务器设置了防火墙

    检测方法:如果安装源数据库的服务器为Linux,那么在shell中运行 iptables -L,检查服务器是否配置了防火墙。如果安装源数据库的服务器为window,那么在控制面板中查找到Windows防火墙,查看是否配置了防火墙。

    修复方法:先将防火墙关闭后,重新进行预检查。

  • 数据传输服务器与源数据库网络不通

    如果不是上面三种情况中的任何一种,那么可能是由于数据传输服务器跟源数据库网络不连通,当处于这种情况时,请联系数据传输服务值班同学协助解决。

本文导读目录