代码之家  ›  专栏  ›  技术社区  ›  disasterkid

到mysql rds的元数据库连接:5000毫秒后超时

  •  2
  • disasterkid  · 技术社区  · 6 年前

    我的元数据库运行在amazon beanstalk实例上,我创建了一个rds数据库(mysql),可以使用mysql工作台访问它。

    当我尝试将数据库添加到元数据库时,收到以下错误消息:

    5000毫秒后超时。

    我试图增加RDS实例的超时时间,但显然,您应该创建一个新的参数组。但我不知道该如何将参数组提出来。 其他JDBC连接字符串选项 可能吧?)

    mysql rds是公开的。

    更新:rds实例上的安全组设置

    Inbound: 
    Custom TCP Rule  
    TCP  
    3306
    83.219.196.40/32
    
    Outbound: 
    All traffic 
    All 
    All
    0.0.0.0/0
    

    更新2:元数据库日志消息

    Jun 25 12:05:13 ERROR metabase.driver :: Failed to connect to database: Timed out after 5000 milliseconds.
    Jun 25 12:05:13 DEBUG metabase.middleware :: POST /api/database 400 (5 s) (0 DB calls)
    {:valid false, :dbname "Timed out after 5000 milliseconds.", :message "Timed out after 5000 milliseconds."}
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   John Rotenstein    6 年前

    您的安全组当前只允许从一个IP地址进行访问(如上所示)。它正在阻止来自web应用程序的访问。

    你将需要 向rds安全组添加允许从web应用程序进行入站访问的规则 是的。

    最好的办法是 查找安全组的ID 与您的web应用程序关联的(例如 SG-ABCD1234 )中。然后,向rds安全组添加一个允许从此安全组id进行访问的规则。这将允许从 任何 使用该安全组的ec2实例(即使beanstalk添加/删除实例,它们都将继承访问权限)。