Mysql将结果集从远程服务器导出为CSV

Jee*_*ets 5 mysql

我的应用程序在服务器1上运行,数据库在服务器2上.我希望将select查询的输出作为CSV输出到服务器1,即我的应用程序服务器.我怎样才能实现这一点.select into outfile不会有帮助,因为它只在本地服务器上转储,所以如果我在DB服务器上运行查询,它将在其上创建文件而不是应用程序服务器.mysql -e选项也提供帮助,因为它不会转储为CSV.任何人都可以建议如何从远程服务器本地直接创建文件作为CSV?谢谢.

Axe*_*hor 11

您可以使用outfile并事后将文件ftp发送到本地主机或将正常查询的结果传递给某些sed/awk以将其转换为csv?

我发现的是: mysql -umysqlusername -pmysqlpass databasename -B -e "select * from \`tablename\`;" | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > mysql_exported_table.csv

除此之外,我们将使用(s)ftp解决方案.