Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用psycopg2的aws localstack红移连接问题_Python_Amazon Redshift_Psycopg2_Boto3_Localstack - Fatal编程技术网

Python 使用psycopg2的aws localstack红移连接问题

Python 使用psycopg2的aws localstack红移连接问题,python,amazon-redshift,psycopg2,boto3,localstack,Python,Amazon Redshift,Psycopg2,Boto3,Localstack,使用localstack模拟AWS服务。 正在尝试使用psycopg2连接到本地红移实例。但是连接超时了。使用boto3的连接已成功完成 client = boto3.client('redshift', endpoint_url='http://127.0.0.1:5439/') print client.describe_clusters() con = psycopg2.connect(dbname='test123', host='127.0.0.1', port=5439, user=

使用localstack模拟AWS服务。 正在尝试使用psycopg2连接到本地红移实例。但是连接超时了。使用boto3的连接已成功完成

client = boto3.client('redshift', endpoint_url='http://127.0.0.1:5439/')
print client.describe_clusters()
con = psycopg2.connect(dbname='test123', host='127.0.0.1', port=5439, user='user', password='password', connect_timeout=10)
输出:

{u'Clusters': [{u'NumberOfNodes': 1, u'AvailabilityZone': 'localhost', u'NodeType': 'ds1.large', u'PubliclyAccessible': True, u'MasterUsername': 'user', u'ClusterParameterGroups': [{u'ParameterGroupName': 'default.redshift-1.0', u'ParameterApplyStatus': 'in-sync'}], u'Encrypted': True, u'ClusterSecurityGroups': [{u'Status': 'active', u'ClusterSecurityGroupName': 'Default'}], u'AllowVersionUpgrade': False, u'VpcSecurityGroups': [], u'ClusterSubnetGroupName': 'testgroup', u'AutomatedSnapshotRetentionPeriod': 1, u'ClusterStatus': 'creating', u'ClusterIdentifier': 'test123', u'DBName': 'test123', u'PreferredMaintenanceWindow': 'Mon:03:00-Mon:03:30', u'ClusterVersion': '1.0'}], 'ResponseMetadata': {'RetryAttempts': 0, 'HTTPStatusCode': 200, 'RequestId': '384ac68d-3775-11df-8963-01868b7c937a', 'HTTPHeaders': {'date': 'Thu, 28 Sep 2017 05:54:46 GMT', 'content-length': '1264', 'content-type': 'text/html; charset=utf-8', 'server': 'amazon.com'}}}
Traceback (most recent call last):
  File "/home/shrishinde/PycharmProjects/Test/redshift_test.py", line 46, in <module>
    con = psycopg2.connect(dbname='test123', host='127.0.0.1', port=5439, user='user', password='password', connect_timeout=10)
  File "/usr/local/lib/python2.7/dist-packages/psycopg2/__init__.py", line 130, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: timeout expired
{u'Clusters':[{u'NumberOfNodes':1,u'AvailabilityZone':'localhost',u'NodeType':'ds1.large',u'publilyaccessible':True,u'MasterUsername':'user',u'ClusterParameterGroups':[{u'ParameterGroupName':'default.redshift-1.0',u'ParameterApplyStatus':'in sync'}],u'encryed':True,u'ClusterSecurityGroups':[{u'Status':'active',u'ClusterSecurityGroupName':'Default'}],u'AllowVersionUpgrade':False,u'VpcSecurityGroups':[],u'ClusterSubnetGroupName':'testgroup',u'AutomatedSnapshotRetentionPeriod':1,u'ClusterStatus':'creating',u'ClusterIdentifier':'test123',u'DBName':'test123',u'PreferredMaintenanceWindow':'Mon:03:30',u'ClusterVersion':'1.0'}','ResponseMetadata':{'RetryAttempts':0,'HTTPStatusCode':200,'RequestId':'384ac68d-3775-11df-8963-01868b7c937a','HTTPHeaders':{'date':'Thu,Sep 2017年9月28日05:54:46 GMT','content length':'1264','content type':'text/html;charset=utf-8','server':'amazon.com'}}
回溯(最近一次呼叫最后一次):
文件“/home/shrishinde/PycharmProjects/Test/redshift_Test.py”,第46行,in
con=psycopg2.connect(dbname='test123',host='127.0.0.1',port=5439,user='user',password='password',connect\u timeout=10)
文件“/usr/local/lib/python2.7/dist-packages/psycopg2/_-init__;.py”,第130行,在connect中
连接=连接(dsn,连接工厂=连接工厂,**kwasync)
psycopg2.OperationalError:超时已过期

请提供关于问题所在或如何调试此问题的输入。

我只是四处寻找如何连接到localstack的红移服务器。根据此github问题,它看起来不是一个真正完整的红移服务器,并且目前无法以这种方式连接(截至2017年3月,显然情况仍然如此):

#29中增加了对红移的基本支持。请注意,模拟功能仅包括基本的红移API方法(的子集)。此处不支持实际的查询功能(即通过JDBC访问红移)(在这个阶段,模拟整个查询引擎是不可行的)