使用INTO OUTFILE命令时,它会将数据导出到服务器的本地文件夹,而不是您正在执行查询的文件夹.
示例:您在计算机上(ip:192.168.0.100)并使用mysql命令连接到mysqlserver(ip:192.168.0.101):mysql -uuser -h192.168.0.101 -A database.通过执行SELECT * INTO OUTFILE,文件保存在mysqlserver(ip:192.168.0.101)而不是计算机上(ip:192.168.0.100).
现在,您可以使用创建CSV文件的脚本(在您的cronjob中 – 您选择所有数据,生成文件并通过scp发送到其他服务器).
或者 – 您也可以在/ shared /上安装NFS,当您自动创建文件时,其他服务器也会使用它.
或者 – 您可以在第一台服务器上的bash脚本中运行mysql命令.
mysql -uroot test -B -e "select * from test.mytable;" | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > /tmp/filename.csv