【问题标题】:Query Redshift Database from localhost web app?从 localhost Web 应用程序查询 Redshift 数据库?
【发布时间】:2016-06-16 00:56:36
【问题描述】:

我正在尝试将本地主机上的 html/css/js Web 应用程序连接到单独的 redshift 数据库。我无权访问密钥/机密,因此 SDK for PHP 对我不起作用。

还有其他选择吗?我觉得我走错了路。我正在尝试查询 redshift 数据库并在我的本地主机上构建一些 html/css 图形。

根据 Ketan 尝试的代码

$dbconn = pg_connect("host=endpoint dbname=name user=UN password=PW") or die('Could not connect: ' . pg_last_error());

还有错误...

警告:pg_connect():无法连接到 PostgreSQL 服务器:无法连接到服务器:连接超时 (0x0000274C/10060) 服务器是否在主机“端点”上运行并接受端口 ### 上的 TCP/IP 连接#?在第 38 行的 results.php 中

【问题讨论】:

    标签: php database amazon-web-services amazon-redshift


    【解决方案1】:

    您不需要任何密钥/秘密来查询 Redshift 集群。

    将其视为通常的基于 PostgreSQL 的数据库。您只需要以下内容:

    • Redshift 集群 URL 和端口
    • 包含您的表的数据库的名称、用户名和密码

    【讨论】:

    • 感谢您的回答。我对数据库很陌生......你能提供额外的上下文吗?我在原始帖子中包含了我的新代码/错误。
    【解决方案2】:

    您可以在 AWS lambda 中使用 redshift-sql。然后你可以从 web 应用调用 lambda。

    var config = {
      host: 'rs-cluster.us-east-1.redshift.amazonaws.com',
      db: 'dev',
      user: 'rsadmin',
      password: 'rsPassword'
    };
    var rssql = require('redshift-sql')(config);
    var query = 'select * from myTable limit 10';
    
    rssql(query, function cb(err, result) {
      if (err) {
        return console.error(err);
      }
      // do stuff 
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-11
      • 1970-01-01
      • 1970-01-01
      • 2018-04-18
      • 2015-06-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多