【问题标题】:Heroku cleardb connection default addr for network unknown网络未知的 Heroku cleardb 连接默认地址
【发布时间】:2017-04-22 17:06:45
【问题描述】:

我为我的应用创建了一个免费的 Heroku cleardb 实例。我将数据库 URL 设置为:

heroku config:set DATABASE_URL='mysql://user:pass@us-cdbr-iron-east-03.cleardb.net/heroku_database?reconnect=true'

我正在尝试使用 Go 应用程序进行连接。但是当我尝试访问我的应用程序时,它给出了以下 mysql 错误:

default addr for network 'us-cdbr-iron-east-03.cleardb.net' unknown

我也尝试使用协议和端口设置数据库 url:

heroku config:set DATABASE_URL='mysql://user:pass@tcp(us-cdbr-iron-east-03.cleardb.net:3306)/heroku__database?reconnect=true'

这会将错误更改为:

Access denied for user

我猜是因为不允许直接访问端口。有人知道这是什么问题吗?

【问题讨论】:

    标签: mysql heroku go cleardb


    【解决方案1】:

    这是一个Go 特定的问题。需要进行三处更改:

    1. Gosql.Open 已经将 scheme 作为其第一个参数,因此需要将其从 DATABASE_URL 中剥离。
    2. 连接字符串不应有任何查询参数(删除?reconnect=true)。
    3. 需要协议 (tcp) 和端口(MySQL 为 3306)号

    因此最终的数据库 URL 将是:

    DATABASE_URL='user:pass@tcp(us-cdbr-iron-east-03.cleardb.net:3306)/your_heroku_database'
    

    【讨论】:

      猜你喜欢
      • 2019-03-19
      • 2017-06-22
      • 1970-01-01
      • 1970-01-01
      • 2020-01-14
      • 2017-03-27
      • 2020-11-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多