【问题标题】:Amazon Aurora PostgreSQL SELECT INTO OUTFILE S3Amazon Aurora PostgreSQL SELECT INTO OUTFILE S3
【发布时间】:2020-02-24 04:48:10
【问题描述】:

我们正在尝试将数据从 Amazon Aurora PostgreSQL 数据库导出到 S3 存储桶。使用的代码是这样的:

SELECT  *  FROM analytics.my_test INTO OUTFILE S3
  's3-us-east-2://myurl/sampledata'         
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
MANIFEST ON
OVERWRITE ON; 

所有权限都已设置,但出现错误

SQL 错误 [42601]:错误:“INTO”位置或附近的语法错误:55

这仅适用于 MySQL 数据库吗?

【问题讨论】:

    标签: postgresql amazon-web-services amazon-s3 file-io select-into


    【解决方案1】:

    这是 Aurora Postgres 上相当新的功能,但可以将查询结果导出到 s3 上的文件中:https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/postgresql-s3-export.html#postgresql-s3-export-file

    虽然语法与 MySQL 不同。对于 Postgres,它是:

    SELECT * from aws_s3.query_export_to_s3('select * from sample_table', 
       aws_commons.create_s3_uri('sample-bucket', 'sample-filepath', 'us-west-2') 
    );
    

    【讨论】:

    • 是异步的吗?
    【解决方案2】:

    我相信在 S3 中保存 SQL 选择输出数据仅适用于 Amazon Aurora MySQL DB。我在官方文档中没有看到任何提及 Amazon Aurora PostgresSQL 相同的参考。

    这是我参考的官方文档中的 sn-ps

    Integrating Amazon Aurora MySQL with Other AWS Services

    Amazon Aurora MySQL 与其他 AWS 服务集成,因此您可以 扩展您的 Aurora MySQL 数据库集群以使用其他功能 AWS 云。您的 Aurora MySQL 数据库集群可以使用 AWS 服务来做 以下:

    使用同步或异步调用 AWS Lambda 函数 本机函数 lambda_sync 或 lambda_async。更多 信息,请参阅使用 Aurora MySQL 调用 Lambda 函数 原生函数。

    从存储在 Amazon Simple Storage 中的文本或 XML 文件加载数据 使用 LOAD DATA 将服务 (Amazon S3) 存储桶存储到您的数据库集群中 FROM S3 或 LOAD XML FROM S3 命令。有关详细信息,请参阅加载 从文本文件到 Amazon Aurora MySQL 数据库集群中的数据 Amazon S3 存储桶。

    将数据从您的数据库保存到存储在 Amazon S3 存储桶中的文本文件中 使用 SELECT INTO OUTFILE S3 命令集群。更多 信息,请参阅从 Amazon Aurora MySQL 数据库集群保存数据 到 Amazon S3 存储桶中的文本文件中。

    使用 Application Auto 自动添加或删除 Aurora 副本 缩放。有关更多信息,请参阅使用 Amazon Aurora Auto Scaling 使用 Aurora 副本。

    Integrating Amazon Aurora PostgreSQL with Other AWS Services

    Amazon Aurora 与其他 AWS 服务集成,因此您可以 扩展您的 Aurora PostgreSQL 数据库集群以使用额外的 AWS 云中的功能。您的 Aurora PostgreSQL 数据库集群可以 使用 AWS 服务执行以下操作:

    快速收集、查看和评估 Aurora 的性能 具有 Amazon RDS Performance Insights 的 PostgreSQL 数据库实例。 Performance Insights 扩展了现有的 Amazon RDS 监控 说明数据库性能并帮助您的功能 分析影响它的任何问题。使用性能洞察 仪表板,您可以可视化数据库负载并通过过滤负载 等待、SQL 语句、主机或用户。

    有关 Performance Insights 的更多信息,请参阅使用 Amazon RDS 性能洞察。

    使用 Aurora Auto Scaling 自动添加或删除 Aurora 副本。 有关更多信息,请参阅将 Amazon Aurora Auto Scaling 与 Aurora 结合使用 副本。

    配置您的 Aurora PostgreSQL 数据库集群以将日志数据发布到 亚马逊云观察日志。 CloudWatch Logs 提供高度持久的存储 用于您的日志记录。使用 CloudWatch Logs,您可以实时执行 分析日志数据,并使用 CloudWatch 创建警报和查看 指标。有关更多信息,请参阅发布 Aurora PostgreSQL 日志 到 Amazon CloudWatch Logs。

    没有提到为 PostgresSQL 将数据保存到 S3

    【讨论】:

      猜你喜欢
      • 2018-07-02
      • 2011-02-21
      • 2013-03-24
      • 1970-01-01
      • 1970-01-01
      • 2012-02-26
      • 2014-05-28
      • 2010-11-05
      • 2011-05-14
      相关资源
      最近更新 更多