我创建的MySQL备份文件是使用--all-databases转储的,其中包含"CREATE DATABASE IF NOT EXISTS“语句。
现在,我有了一个全新的MySQL实例,我希望将该转储重新导入其中(其中没有任何数据库)。
在不指定数据库的情况下重新加载该文件的正确方法是什么,或者这是不可能的。我必须先创建所有数据库还是只创建一个数据库才能正确执行命令?
我能找到的所有示例都指定了"mysql -u xxx database < backupfile“或"USE database”,但是如果你必须自己创建数据库来导入它,那么拥有一个带有"CREATE DATABASE IF NOT EXISTS“语句的转储文件有什么意义呢??
发布于 2018-01-26 23:28:02
请注意IF NOT EXISTS子句。备份文件准备好处理这两种情况:当数据库已经存在时(您手动创建了它,或者可能您从现有数据库中删除了所有表并希望从备份中恢复它),以及当您想要将备份导入到数据库尚不存在的新服务器时。
您只需在命令行终端上运行mysql -h {host} -u {user} -p < {backupfile},您的数据库就会重新启动并运行。
https://stackoverflow.com/questions/48463337
复制相似问题