SQL Server 数据库备份和还原——使用sqlcmd

版权声明:原创的均为博主所写,转载必须注明出处! https://blog.csdn.net/qq_41870552/article/details/83997456

备份

BACKUP DATABASE 数据库名 TO DISK=’d:\数据库名.bak’;

还原

RESTORE DATABASE 数据库名 FROM DISK=’d:\数据库名.bak’;

使用sqlcmd命令则要加上连接信息:

备份

sqlcmd -S . -E -Q “BACKUP DATABASE 数据库名 TO DISK=’d:\数据库名.bak'”;

还原

sqlcmd -S . -E -Q “RESTORE DATABASE 数据库名 FROM DISK=’d:\数据库名.bak'”;

以上的还原命令,如果备份和还原在同一台SqlServer 服务器上,则没有问题;但是,如果是在另一台SqlServer 服务器上还原该备份文件,则会报错。因为还原的时候会验证备份时数据文件的路径。这时,我们需要使用WITH MOVE 重新映射数据文件和日志文件:

sqlcmd -S .\sqlexpress -E -Q "RESTORE DATABASE 数据库名 FROM DISK='D:\数据库名.bak' WITH MOVE '数据库名' TO 'D:\MyData\数据库名_Data.mdf', Move '数据库名_log' TO 'D:\MyData\数据库名_log.ldf'";

如果我们不知道数据文件和日志文件的名称,可以使用下面的命令查询:

sqlcmd -S .\sqlexpress -E -Q “RESTORE FILELISTONLY FROM DISK=’d:\数据库名.bak'”;

猜你喜欢

转载自blog.csdn.net/qq_41870552/article/details/83997456
今日推荐