我在bat文件中使用此查询来备份db,
sqlcmd -S .\MSSQLSERVER -E -Q "EXEC sp_BackupDb @backupLocation='D:\SQLBackups\', @databaseName='TestDb', @backupType='F'" pause
抛出这个错误,
Sqlcmd:错误:用于SQL Server的Microsoft ODBC驱动程序11:SQL Server 网络接口:连接字符串无效[87]。 SQLCMD: 错误:SQL Server的Microsoft ODBC驱动程序11:登录超时 过期。 Sqlcmd:错误:SQL Server的Microsoft ODBC驱动程序11:A 发生与网络相关或特定于站点的错误 建立与SQL Server的连接。找不到服务器 无障碍。检查实例名称是否正确,以及SQL Server是否正确 配置为允许远程连接。有关更多信息,请参阅SQL Server Books Online ..
有人可以帮忙吗?提前谢谢。
答案 0 :(得分:0)
您可以在.bat文件中使用SQLCMD
来制作此bakcup,在此链接中您有一个示例stackoverflow link
<强> SQLCMD 强>:
sqlcmd实用程序允许您在命令提示符下,在SQLCMD模式下的查询编辑器中,Windows脚本文件或操作系统(Cmd.exe)作业步骤中输入Transact-SQL语句,系统过程和脚本文件。 SQL Server代理作业。此实用程序使用OLE DB执行Transact-SQL批处理。
以下是示例和定义的链接:msdn link definition
例如:
sqlcmd -E -S %SERVERNAME% -d master -Q "BACKUP DATABASE [%DATABASENAME%] TO DISK = N'%BACKUPFILENAME%' WITH INIT , NOUNLOAD , NAME = N'%DATABASENAME% backup', NOSKIP , STATS = 10, NOFORMAT"
希望这有帮助!