mysql从远程数据库转储到localhost outfile

jda*_*mae 13 mysql sql into-outfile

我被卡住了.我基本上想使用OUTFILE命令从远程数据库创建LOCAL数据文件(csv文件).

我基本上是,拉数据..并希望在我的本地文件服务器上创建它而不是在远程服务器上创建outfile.我远程限制空间,因此我想在本地创建文件.我怎么办这个怎么办?谢谢!

到目前为止,这是我在命令行上的工作语法(它创建了我想要的文件,但在远程服务器上)

mysql -u test -pfoo --database test -h testdb201.name.host.com --port 3306 -ss -e "SELECT 'a','b','c' UNION SELECT col1, col2, col3 INTO OUTFILE '/tmp/mytest.csv' FIELDS TERMINATED BY ','  FROM tst_p000 limit 10"
Run Code Online (Sandbox Code Playgroud)

Ada*_*rax 21

根据MySQL Select语法,您不能使用OUTFILE输出到服务器本身之外的文件.

您需要将查询的制表符分隔输出转换为CSV格式,如下所示(sed命令在此处记入).

mysql -u test -pfoo --database test -h testdb201.name.host.com --port 3306 -ss -e "SELECT 'a','b','c' UNION SELECT col1, col2, col3 " | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > myDump.csv
Run Code Online (Sandbox Code Playgroud)