【问题标题】:How to back up sql server 2014 db data via bat file?如何通过bat文件备份sql server 2014 db数据?
【发布时间】:2016-06-15 11:50:06
【问题描述】:

我在 bat 文件中使用这个查询来备份数据库,

sqlcmd -S .\MSSQLSERVER -E -Q "EXEC sp_BackupDb @backupLocation='D:\SQLBackups\', @databaseName='TestDb', @backupType='F'" pause

它正在抛出这个错误,

Sqlcmd:错误:Microsoft ODBC Driver 11 for SQL Server:SQL Server 网络接口:连接字符串无效 [87]。 sqlcmd: 错误:Microsoft ODBC Driver 11 for SQL Server:登录超时 已到期。 Sqlcmd:错误:Microsoft ODBC Driver 11 for SQL Server:A 发生网络相关或特定于立场的错误,而 建立与 SQL Server 的连接。未找到服务器 无障碍。检查实例名称是否正确以及 SQL Server 是否正确 配置为允许远程连接。有关详细信息,请参阅 SQL 服务器在线书籍..

有人可以帮忙吗?提前致谢。

【问题讨论】:

  • 尝试从服务器名称规范中删除实例名称:-S . 而不是 -S .\MSSQLSERVER
  • sqlcmd -S .\MSSQLSERVER -E -Q "select 1" 是否返回错误?l

标签: sql-server windows batch-file sql-server-2014 database-backups


【解决方案1】:

你可以在 .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"

希望对您有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-02
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 2013-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多