将mysql数据库导出到csv文件而不包括索引,表结构等的最佳方法是什么? 我只需要获取所有数据,我有很多表,所以我不想一个接一个地做。 我正在使用在Linux上运行的0xdbe和Workbench。 谢谢!
答案 0 :(得分:3)
mysqldump
有一种转储制表符分隔文件的模式,每个表一个。
mysqldump -u <username> -p<password> -T <output_directory> --no-create-info <database_name>
通过一些调整,可以看起来像一个CSV文件。
mysqldump -u <username> -p<password> -T <output_directory> --fields-terminated-by ',' --fields-enclosed-by '"' --fields-escaped-by '\' --no-create-info <database_name>
请注意,该文件是由数据库编写的,因此无论您运行数据库的用户是否需要对输出目录具有写访问权限!
答案 1 :(得分:0)
这对我来说很好:
mysqldump DBNAME TABLENAME --fields-terminated-by ',' \
--fields-enclosed-by '"' --fields-escaped-by '\' \
--no-create-info --tab /var/lib/mysql-files/
我正在转储到/var/lib/mysql-files/
以避免此错误:
mysqldump:得到错误:1290:MySQL服务器正在使用--secure-file-priv选项运行,因此在执行“ SELECT INTO OUTFILE”时无法执行该语句。
答案 2 :(得分:-2)
mysqldump可能很有用。即使它不是csv输出,它也包含所有索引和表结构,包括数据。
mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql