amazon-web-services – 为什么从S3加载AWS Redshift时会出现S3ServiceException错误?

尝试从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 ',';
点赞