gpt4 book ai didi

mysql - MySQL 转储的完整数据库重置?

转载 作者:搜寻专家 更新时间:2023-10-30 22:12:45 25 4
gpt4 key购买 nike

这似乎是一个非常愚蠢的问题,但我没有以任何其他方式学习它,我只是想澄清一下。

不久前我开始使用MySQL,为了测试各种场景,我备份了我的数据库。我为此使用了 MySQL 转储:

导出:

mysqldump -hSERVER -uUSER -pPASSWORD --all-databases > filename.sql

导入:

mysql -hSERVER -uUSER -pPASSWORD < filename.sql

非常简单,直到现在它运行良好,当我注意到这个“设置”有一个小问题时:它没有完全“重置”数据库和表。例如,如果在创建转储文件后添加了一个附加表,那么如果您导入相同的转储文件,该附加表将不会消失。它基本上只“更正”已经存在的表并重新创建任何丢失的数据库或表,但不会删除任何其他表,这些表的名称恰好不在转储文件中。

我想做的是在导入这样的转储文件时完全重置服务器上的所有数据库。什么是最好的解决方案?是否有为此目的保留的特殊导入功能,还是我必须先自己删除数据库?或者这是个坏主意?

最佳答案

您可以使用参数 --add-drop-database 在每个“创建数据库”语句之前将“删除数据库”语句添加到转储。

例如

mysqldump -hSERVER -uUSER -pPASSWORD --all-databases --add-drop-database >filename.sql

参见 here了解详情。

关于mysql - MySQL 转储的完整数据库重置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21679307/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com