(1)验证失败或权限不足
请按照以下可能的原因逐一排查:
确保授权的账号及密码具有以下权限:
MySQL
SHOW DATABASES, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT ON *.* SELECT ON mysql.* SELECT ON performance_schema.*
MongoDB
admin数据库,root角色
Redis 没有账号概念,因此仅需要保证密码正确
注意:redis 修改密码时修改其配置文件中requirepass选项并重启Redis服务。请参考《Redis configuration》
确保授权的账号及密码正确,建议在DBGateway所在服务器上以授权账号及密码远程连接数据库实例排查
重启 DBGateway 并观察实例授权是否成功
推荐升级到 DBGateway 最新版
(2)无法连接
“无法连接”是由于DBGateway无法连接数据库实例导致的,请按照以下可能的原因逐一排查:
实例正常运行服务
数据库实例(MySQL、MongoDB、Redis等)如果未正常运行,请检查这些实例的进程是否存在。
DBGateway 所在服务器与数据库实例(MySQL、MongoDB、Redis等)网络不通
请执行以下命令确认:
telnet 数据库实例ip或域名 数据库实例服务端口号 如: telnet 192.168.100.1 3306
如出现以下提示,表示网络连接正常,需要进一步参考《查看 DBGateway 日志》继续排查:
Connected to xxxxxx. Escape character is '^]'.
如没有出现:Connected to 、Escape character is ‘^]’. 则说明为网络连通性问题,通常由服务器之间网络隔离、路由设置、防火墙或数据库实例拒绝非本地连接导致的。
(3)监控异常
请参考《判断 DBGateway 进程是否存活》小节检查 DBGateway 运行状态
尝试重启 DBGateway 并观察监控是否恢复
推荐升级到 DBGateway 最新版
(4)长时间“已授权,验证中”
一般情况下,正确授权之后1~2分钟之内,实例接入状态会变为“连接正常”。如长时间(超过2分钟)仍然显示“已授权,验证中”。
请参考《判断 DBGateway 进程是否存活》小节检查 DBGateway 运行状态
尝试重启 DBGateway 并观察实例授权是否成功
推荐升级到 DBGateway 最新版