Sau*_*ngh 4 tunnel amazon-ec2 amazon-web-services ssh-tunnel amazon-redshift
我是红移新手。目前,我可以创建一个 redshift 集群并通过 SQL Workbench 连接它,但我期待着ssh从我的 MAC 终端隧道化我的 redshift 集群。我做了一些研究,并能够创建一个具有相同 VPC ID 和子网组的 ec2 实例,我用它来创建 Redshift 集群。我也已经在我的 ec2 实例上安装了 psql。当我使用 psql 命令连接到 redshift 时,我无法理解哪里出了问题:
psql -h my redshift endpoint -p 5439 -d database name -U user -c " my query "
Run Code Online (Sandbox Code Playgroud)
它给我错误 psql: 无法将主机名“my redshift端点”翻译为地址: 名称或服务未知
第一步是使用隧道连接到 EC2 实例ssh,并使用将本地端口转发到远程端口的命令:
ssh -i KEYPAIR.pem -L 5439:REDSHIFT-ENDPOINT:5439 ec2-user@EC2-PUBLIC-IP
Run Code Online (Sandbox Code Playgroud)
在哪里:
这个命令说:
REDSHIFT-ENDPOINT:5439(用您的端点替换REDSHIFT-ENDPOINT)然后,您可以连接到 Redshift,localhost:5439就像它在您自己的计算机上运行一样。该流量将被发送到远程计算机,远程计算机会将其发送到REDSHIFT-ENDPOINT:5439.
例如,如果您想使用psql连接到 Redshift,请使用:
psql -h localhost -p 5439 -U <username>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5141 次 |
| 最近记录: |