如何将临时 MySQL 表转储到文件中?

发布于 2024-08-30 09:12:14 字数 74 浏览 3 评论 0原文

有没有一种方法可以创建转储/导出/保存临时 MySQL 表到磁盘上的文件中(.sql 文件,类似于 mysqldump 创建的文件)?

Is there a way to create a dump/export/save a temporary MySQL table into a file on disk(.sql file that is, similar to one that is created by mysqldump)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

奈何桥上唱咆哮 2024-09-06 09:12:14

抱歉,我第一次没有正确阅读问题...无论如何,我能想到的最好的方法是使用 SELECT ... INTO OUTFILE 语句,如下所示:

SELECT * INTO OUTFILE 'result.csv'
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  LINES TERMINATED BY '\n'
  FROM temp_table;

这确实有许多限制,例如,它只转储原始数据而不包括字段标题。我发现可能有用也可能没用的另一件事是 SHOW CREATE TABLE 语句。如果您能找到某种方法来组合这两个语句的输出,您也许能够获得由我的下面的命令生成的正确的“转储”文件。


您应该能够使用mysqldump应用程序:

mysqldump --databases temptable > file.sql

这将转储带有CREATE减速的表。

Sorry, I did not read the question properly the first time around... at any rate, the best I can think of is using the SELECT ... INTO OUTFILE statement, like this:

SELECT * INTO OUTFILE 'result.csv'
  FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  LINES TERMINATED BY '\n'
  FROM temp_table;

This does have many limitations thought, for instance, it only dumps the raw data without including the field headers. The other thing I found that may or may not be of use is the SHOW CREATE TABLE statement. If you can find some way of combining the output from these two statements, you may be able to get a proper "dump" file as produced by my command below.


You should be able to use the mysqldump application:

mysqldump --databases temptable > file.sql

This will dump the table with CREATE decelerations.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文