尝试从S3中的CSV文件加载Redshift中的表时出错.错误是:
error: S3ServiceException:All access to this object has been disabled,Status 403,Error AllAccessDisabled,Rid FBC64D9377CF9763,ExtRid o1vSFuV8SMtYDjkgKCYZ6VhoHlpzLoBVyXaio6hdSPZ5JRlug+c9XNTchMPzNziD,CanRetry 1
code: 8001
context: Listing bucket=amazonaws.com prefix=els-usage/simple.txt
query: 1122
location: s3_utility.cpp:540
process: padbmaster [pid=6649]
使用的复制声明是:
copy public.simple from 's3://amazonaws.com/mypath/simple.txt' CREDENTIALS 'aws_access_key_id=xxxxxxx;aws_secret_access_key=xxxxxx' delimiter ',';
由于这是我第一次尝试使用Redshift和S3,因此我将simple.txt文件(及其目标表)保留为单个字段记录.我在Aginity Workbench和SQL Workbench中都运行了相同的结果.
我点击了S3文件属性选项卡中的链接,然后下载了simple.txt文件 – 因此输入文件似乎可以访问.可以肯定的是,我已经公开访问了它.
不幸的是,我没有看到任何有助于在Redshift Loads选项卡中进行调试的附加信息.
谁能看到我做错了什么?
最佳答案 从URL中删除amazonaws.com修复了问题.生成的COPY语句现在是:
copy public.simple from 's3://mypath/simple.txt' CREDENTIALS 'aws_access_key_id=xxxxxxx;aws_secret_access_key=xxxxxx' delimiter ',';