问题原因 | 解决方案 |
未启动MySQL进程。 | 在MySQL服务器中执行如下命令,查看是否已启动MySQL进程。 ps -ef | grep mysql
若执行上述命令后,未出现MySQL进程,则表示MySQL进程未启动,请执行如下命令启动MySQL进程后,重新连接。 systemctl start mysqld
|
ECS实例或自建MySQL服务器所在的主机开启了防火墙,限制了连接请求。 | 检查ECS实例或MySQL服务器的防火墙规则,确认已开放MySQL服务的端口(默认端口为3306)。 若DMS的IP地址被添加到防火墙的IP白名单中,请将其从防火墙的白名单中移除。
|
ECS实例安全组未对DMS开放。 | 将DMS的IP添加至ECS实例的安全组中。具体操作,请参见添加安全组规则。 |
root账号设置了仅允许在本地登录MySQL服务器。 | 执行如下命令,检查root账号是否仅允许在本地登录服务器。 show grants for root@'%';
若查询结果为仅允许root账号在本地登录,则可以通过执行如下命令,允许root账号在任意远程地址登录服务器。 use mysql; update user set host = '%' where user = 'root'; FLUSH PRIVILEGES;
|