user2338823 Asked: 2019-06-24 22:15:09 +0800 CST2019-06-24 22:15:09 +0800 CST 2019-06-24 22:15:09 +0800 CST 在 Linux 上备份和恢复 MySQL 中的所有数据库 772 我计划在一台计算机上转储所有数据库并使用以下 2 个命令在另一台计算机上恢复它们:- mysqldump -u username -p --all-databases > dump.sql mysql -u username -p < dump.sql 我的问题是:第二个命令会覆盖与第一台计算机上同名的现有表吗?另外,第二个命令会删除第一台计算机上不存在的所有表吗? 有人可以澄清一下吗? mysql backup 1 个回答 Voted Best Answer IGGt 2019-06-25T00:32:27+08:002019-06-25T00:32:27+08:00 使用的确切语法取决于您使用的 MySQL 版本,但您使用的基本版本的 mysqldump(没有任何其他选项)将运行: CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /; DROP TABLE IF EXISTS `test1`; CREATE TABLE `test1` (. . . 如果您担心,可以检查一下,在运行第二条语句之前,只需查看文件 dump.sql(它只是一个文本文件),您可以清楚地看到它将运行哪些查询。 所以回答你的问题: 第二个命令会覆盖与第一台计算机上同名的现有表吗? 是的,它会的 第二个命令会删除第一台计算机上不存在的所有表吗? 不,它不会 您可以从以下位置获取可用选项的完整列表:https ://dev.mysql.com/doc/refman/8.0/en/mysqldump.html#mysqldump-option-summary
使用的确切语法取决于您使用的 MySQL 版本,但您使用的基本版本的 mysqldump(没有任何其他选项)将运行:
如果您担心,可以检查一下,在运行第二条语句之前,只需查看文件 dump.sql(它只是一个文本文件),您可以清楚地看到它将运行哪些查询。
所以回答你的问题:
是的,它会的
不,它不会
您可以从以下位置获取可用选项的完整列表:https ://dev.mysql.com/doc/refman/8.0/en/mysqldump.html#mysqldump-option-summary