在navicat中,我知道可以在db名上右键,选择“转储SQL文件”,但是它只能备份表,无法生成创建db的sql。这就导致还原数据库的时候必须手动创建db,再运行备份的sql。但是创建db的时候很容易就会忘记db的名字,而且也很麻烦。我相信navicat是完全有能力生成create database的SQL语句的,那为什么在使用“转储SQL文件”时只能生成表和数据的SQL呢?而且自己create database还可能遇到charset和collate和原db不同的问题。
所以,有什么好的办法可以直接把整个mysql完整的备份出来吗?谢谢!
可以通过mysqldump解决
-B参数为生成创建数据库语句,效果如下