备份文件中通常包含create语句和insert语句,mysql命令可以执行备份文件中的create语句和insert语句;
通过create语句来创建数据库和表,通过insert语句来插入备份的数据。
语法格式:mysql -u root -p [dbname] < backup.sql
dbname:参数表示数据库名称。是可选参数,可以指定数据库名,也可以不指定。
指定数据库名时,表示还原该数据库下面的表;不指定时,表示还原一个特定的一个数据库。备份文件中有创建数据库的语句。
Comments:
区别:备份用的命令是mysqldump, 还原用的是mysql。
=====================================================
备份see里面的 cr01 和 employee 表:
mysqldump -u root -p123 see cr01 employee > C:\Users\del\Desktop\see.sql
删除数据库里面的 cr01 和 employee 表——————>
恢复备份:
mysql -u root -p123 see < C:\Users\del\Desktop\all.sql
发现恢复完成。
=======================================================================================================
备份see数据库
mysqldump -u root -p123 --databases see > C:\Users\del\Desktop\seedb.sql
删除see数据库————————>
执行恢复语句:此处没有指定数据库名,因为备份文件里面有创建数据库语句
mysql -u root -p123 < C:\Users\del\Desktop\seedb.sql
发现恢复了see数据库
注意:如果备份的是表,需要指定还原到哪个数据库。
如果备份的是数据库,则不需要指定数据库,前面也不要带任何数据库名称,因为备份文件里面有创建数据库的语句。
带了指定数据库名称会报错。
====================================================================================================
如果所有的数据库都被备份了:
mysqldump -u root -p123 --all-databases > C:\Users\del\Desktop\all.sql
还原命令如下:
mysql -u root -p123 < C:\Users\del\Desktop\all.sql