【问题标题】:Have a Heroku app's DATABASE_URL point to a Media Temple GS database让 Heroku 应用的 DATABASE_URL 指向 Media Temple GS 数据库
【发布时间】:2011-06-02 22:51:24
【问题描述】:

我不知道该在哪里发布,所以我认为这可能是一个好地方。我想知道是否可以让 Heroku 应用程序的 DATABASE_URL 指向 Media Temple GS 数据库?我已经尝试使用以下命令建立与我的 mt 数据库的外部域的连接(同时允许在 mt 可接受的外部 IP 地址中使用 heroku 的 IP 地址):“heroku config:add DATABASE_URL=mysql://username:password@host/databasename - -app appname”并运行“heroku rake db:migrate --app appname”,但它似乎不起作用。有任何想法吗?以下是错误的样子:

耙子中止!
无法连接到“example.com”上的 MySQL 服务器 (111)

【问题讨论】:

    标签: mysql database heroku mediatemple


    【解决方案1】:

    问题不在于 Heroku,过去我已经能够通过我的托管服务提供商成功连接到外部数据库。你需要使用这个符号:

        $pdoconn = new PDO('mysql:host=' . $host . ';dbname=' . $db, $user, $pwd, array( PDO::ATTR_PERSISTENT => false));
    

    另一方面,Media Temple 的策略只允许特定 IP 地址从外部位置连接到在您的 Grid Server 中运行的 mysql 实例。

    您可以按照以下步骤更改该列表:

    您的域 > 管理员 > 管理数据库 > 用户和设置 > 外部数据库 > 添加 IP

    这里的问题主要取决于确定您的 Heroku 服务器向 MediaTemple 公开的 IP 地址,因为地址会随着时间而改变。

    要确定您暴露的 IP,您可以创建一个新文件 ipcheck.php,其内容如下:

    <?php
    $homepage = file_get_contents('http://www.whatsmyip.org/');
    echo $homepage;
    ?>
    

    然后在部署到你的 heroku 实例后浏览这个页面,你会发现你的 IP 与每个请求都有很大的不同。

    解决此问题的唯一方法是通过 Proximo addon 或类似地址配置静态 IP,然后配置 MediaTemple 以允许来自该 IP 的外部连接。

    为您的 mysql 数据库运行 hostgator 服务器可能更便宜(hostgator mysql 数据库允许从任何地方进行外部连接)。

    【讨论】:

      【解决方案2】:

      不支持从 Heroku 外部的计算机连接到共享的 heroku 数据库。但是可以使用他们的 pg:ingress 功能连接到专用的 heroku 数据库。

      这本质上是 heroku 堆栈中的一项安全和资源配置功能。如果您需要连接到外部数据层,您需要为它构建一个 API 并通过它工作。

      【讨论】:

        【解决方案3】:

        不支持从 Heroku 外部的计算机连接到共享的 heroku 数据库。但是可以使用他们的 pg:ingress 功能连接到专用的 heroku 数据库。

        这本质上是 heroku 堆栈中的一项安全和资源配置功能。如果您需要连接到外部数据层,您需要为它构建一个 API 并通过它工作。

        编辑: https://github.com/nbudin/heroku_external_db

        正在开发一个漂亮的宝石

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-02-05
          • 2013-03-23
          • 1970-01-01
          • 1970-01-01
          • 2012-09-04
          • 2020-09-26
          • 2014-06-12
          • 2014-04-05
          相关资源
          最近更新 更多