我知道我们可以通过查询将表备份为 CSV 格式,如下所示:
SELECT * FROM db.table
INTO OUTFILE 'C:/backup'
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
但这是将备份创建为 CSV 格式。有什么办法可以使它成为 SQL 格式?
我知道我们可以通过查询将表备份为 CSV 格式,如下所示:
SELECT * FROM db.table
INTO OUTFILE 'C:/backup'
CHARACTER SET UTF8
FIELDS TERMINATED BY ';'
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
但这是将备份创建为 CSV 格式。有什么办法可以使它成为 SQL 格式?
目前无法通过查询命令将数据库和/或表导出到 sql 文件中。您将需要使用mysqldump命令行功能。
简单导出:
mysqldump db_name tbl_name > backup-file.sql;
请注意,在不提供任何目标路径的情况下,您的文件将位于执行转储的同一目录中。
导出到指定路径:
mysqldump db_name tbl_name > C:\"backup"\backup-file.sql;
简单导入:
mysql> use db_name;
mysql> source backup-file.sql;
从指定路径导入:
mysql> use db_name;
mysql> source C:\"backup"\backup-file.sql;
"
仅当您在目录路径中使用空格时,才需要在路径周围使用双引号。