【问题标题】:Use LOAD DATA INFILE and SELECT INTO OUTFILE in Cloud SQL在 Cloud SQL 中使用 LOAD DATA INFILE 和 SELECT INTO OUTFILE
【发布时间】:2019-09-25 03:05:39
【问题描述】:

我正在测试 Google Cloud SQL,我必须测试指令 LOAD DATA INFILESELECT...INTO OUTFILE

我知道LOAD DATA LOCAL INFILE这个指令可以代替LOAD DATA INFILE,但是如何在Cloud SQL中使用呢?

指令SELECT...INTO OUTFILE可以直接使用吗?

感谢 Renzo 的回答,但是当我连接到 Cloud SQL 实例时尝试执行指令 SELECT.. INTO OUTFILE 时,我收到以下错误消息:

ERROR 1045 (28000) at line 1: Access denied for user 'root'@'%'

我尝试从连接到 MySQL 上的 Cloud SQL 实例的计算机上使用指令 LOAD DATA LOCAL INFILE 并且它有效。我使用计算机上的文件成功将 CSV 数据导入表中。但我想知道我是否可以使用存储桶中的文件来做同样的事情......

我试着解释我需要做什么:

我们正在将我们的网站迁移到 GCP App Engine/Cloud SQL。我们广泛使用这两个指令 LOAD DATA INFILE 从文件夹“ftp”中选择文件以将它们加载到数据库中。同样,我们使用 SELECT INTO OUTFILE 将数据导出为 CSV 文件到我们网站的文件夹中。所以我关心的是能否在 App Engine/Cloud SQL 上使用相同的流程。

不同之处在于网站实例和数据库实例在 GCP 上是分开的。我们应该在 GCP 上使用存储桶来替换我们的文件夹吗?还是我们应该在 App Engine / Cloud SQL 实例上创建文件夹?您认为最好的解决方案是什么?

提前致谢

【问题讨论】:

    标签: mysql google-cloud-sql load-data-infile select-into-outfile


    【解决方案1】:

    根据关于Importing data into Cloud SQL的页面,

    也可以在mysql客户端中使用LOAD DATA LOCAL INFILE语句,将本地文件加载到数据库中

    您可以按照此link 中的示例步骤通过首先通过 Cloud Shell 连接到您的 Cloud SQL 实例来启动 mysql 客户端。连接后就可以执行import语句:LOAD DATA LOCAL INFILE

    可以应用相同的步骤进行导出,语法SELECT...INTO OUTFILE 可以按原样使用。与其他替代方案一起,这也可以在Exporting data from Cloud SQL 上找到:

    以CSV格式导出相当于运行如下SQL语句:

    SELECT <query> INTO OUTFILE ... CHARACTER SET 'utf8mb4'
            FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"'
            ESCAPED BY '\\' LINES TERMINATED BY '\n'
    

    一旦你执行了这些操作,也建议check their status 特别是如果它长时间运行或发生错误。

    【讨论】:

    • 我在连接到 Cloud SQL 实例时尝试了 SELECT INTO OUTFILE 但它不起作用,我收到错误“拒绝用户访问”。
    • 由于无法在 Cloud SQL 上使用指令 SELECT...INTO OUTFILE,我决定通过 gcloud 指令或 Google API 将文件复制到 GCP 存储桶。关于 LOAD DATA LOCAL INFILE,我决定将文件从 GCP 存储桶复制到 App Engine 临时文件夹,然后使用 LOAD DATA LOCAL INFILE 将数据导入数据库。我想它应该可以工作,但我需要测试......谢谢
    猜你喜欢
    • 2020-02-17
    • 2023-03-24
    • 2023-04-05
    • 1970-01-01
    • 2011-02-21
    • 2013-03-24
    • 1970-01-01
    • 1970-01-01
    • 2016-04-29
    相关资源
    最近更新 更多