我想避免mysqldump,因为它以仅便于mysql读取的形式输出。CSV似乎更通用(每个表一个文件就可以了)。但是,如果mysqldump有优势,我会很高兴。另外,我希望可以从命令行(linux)运行某些内容。如果那是mysql脚本,那么指向如何制作此类内容的指针将很有帮助。
如果您一次可以处理表,并且您的数据不是二进制数据,请使用命令-B选项mysql。使用此选项,它将生成TSV(制表符分隔)文件,这些文件可以轻松导入到Excel等文件中:
-B
mysql
% echo 'SELECT * FROM table' | mysql -B -uxxx -pyyy database
另外,如果您可以直接访问服务器的文件系统,请使用SELECT INTO OUTFILE可以生成实际CSV文件的文件:
SELECT INTO OUTFILE
SELECT * INTO OUTFILE 'table.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' FROM table