我觉得这应该比我容易得多。
copy table
from 's3://s3-us-west-1.amazonaws.com/bucketname/filename.csv'
CREDENTIALS 'aws_access_key_id=my-access;aws_secret_access_key=my-secret'
REGION 'us-west-1';
注意,我在出现问题后添加了REGION部分,但什么也没做。
我感到困惑的地方是,虽然在桶属性只有https://path/to/the/file.csv。我只能假设我读过的所有文档都要求路径以s3://…我只是把https改为s3,就像我的例子中所示。
但是我得到这个错误:
"Error : ERROR: S3ServiceException:
The bucket you are attempting to access must be addressed using the specified endpoint.
Please send all future requests to this endpoint.,Status 301,Error PermanentRedirect,Rid"
我正在使用导航为PostgreSQL连接到Redshift和我在mac上运行。
S3路径应为' S3://bucketname/filename.csv'。试试这个。
是的,这应该容易得多:-)
我只看到这个错误时,你的S3桶不是在美国标准。在这种情况下,您需要使用基于端点的地址,例如http://s3-eu-west-1.amazonaws.com/mybucket/myfile.txt.
您可以在本文档页面中找到您所在地区的端点。http://docs.aws.amazon.com/general/latest/gr/rande.html s3_region