mysql - 将表从 Amazon RDS 导出到 CSV 文件

我有一个 MySQL 数据库在 Amazon RDS 中运行,我想知道如何将整个表格导出为 CSV 格式。

我目前在 Windows 上使用 MySQL 服务器来查询 Amazon 数据库,但是当我尝试运行导出时出现错误,可能是因为没有用于 amazon RDS 的专用文件服务器。有解决办法吗?

最佳答案

大概,您正试图从 Amazon RDS 导出数据库通过 SELECT ... INTO OUTFILE 查询,这会产生这个确实常见的问题,参见例如export database to CSV .各自的AWS team response确认您对缺少服务器访问权限的假设会阻止这样的导出,并建议另一种方法,方法是通过在 MySQL 命令行客户端中选择数据并将输出重新格式化为 CSV,以 CSV 格式导出您的数据,像这样:

mysql -u username -p --database=dbname --host=rdshostname --port=rdsport --batch
  -e "select * from yourtable"
  | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > yourlocalfilename

用户 fpalero provides an alternative如果您知道并预先指定字段,则应该是更简单的方法:

mysql -uroot -ppassword --database=dbtest
  -e "select concat(field1,',',field2,',',field3) FROM tabletest" > tabletest.csv

https://stackoverflow.com/questions/9536224/

相关文章:

mysql - 如何使用时区信息在 MySQL 中存储日期时间

mysql - 我们如何区分 LEFT OUTER JOIN 与 Left Join

mysql - 将聊天消息存储在数据库中的最佳方法?

mysql - unix 时间戳应该如何存储在 int 列中?

mysql - 查找和替换整个 MySQL 数据库

mysql - 在 Windows 7 上重新启动 mysql 服务器

mysql - 将主机访问权限重新分配给 MySQL 用户

mysql - phpmyadmin.pma_table_uirefs 不存在

sql - MySQL:ORDER BY RAND() 的替代方案

mysql - 如何在 Mysql Workbench GUI 中查看表格内容?