【发布时间】:2019-07-30 00:52:38
【问题描述】:
当我使用 SQL 工作台时,AWS 复制命令运行良好。 目的是将 S3 数据复制到 Redshift 表。 这是我正在使用的复制命令:
copy oao_features_usbank_v2 from 's3://my_bucket/test_data.csv' iam_role 'arn:aws:iam::accountid:role/my_role' CSV IGNOREHEADER 1 MAXERROR 10 DELIMITER as '|';
然后在使用python时psycopg2。我尝试了多种连接方法,但都不起作用。如:
conn_string = 'postgresql://username:pwd@host:port/db'
copy_query = 'copy oao_features_usbank_v2 from 's3://my_bucket/test_data.csv' iam_role 'arn:aws:iam::accountid:role/my_role' CSV IGNOREHEADER 1 MAXERROR 10 DELIMITER as '|';'
with psycopg2.connect(conn_string) as conn:
with conn.cursor() as curs:
curs.execute(copy_query)
conn.commit()
【问题讨论】:
标签: python-3.x amazon-s3 amazon-ec2 amazon-redshift psycopg2