如何在 C# 中使用 SMO 使用 FILE STREAM 备份和恢复数据库

Posted

技术标签:

【中文标题】如何在 C# 中使用 SMO 使用 FILE STREAM 备份和恢复数据库【英文标题】:How To Backup And Restore DataBase With FILE STREAM Using SMO in C# 【发布时间】:2011-09-28 17:52:38 【问题描述】:

如何在 C# 中使用 SMO 备份和恢复带有文件流的数据库。 我在 SMO 的服务器类中找到了一些属性,例如“FilestreamLevel”和“FilestreamShareName” 但我不知道如何使用它们。

请帮忙 谢谢大家

【问题讨论】:

你能告诉我们你迄今为止尝试/编写的代码吗? 【参考方案1】:

备份使用 FILESTREAM 的数据库不需要什么特别的操作:

由于 FILESTREAM 被实现为 varbinary(max) 列并直接集成到数据库引擎中,因此大多数 SQL Server 管理工具和函数无需修改 FILESTREAM 数据即可工作。例如,您可以对 FILESTREAM 数据使用所有备份和恢复模型,并使用数据库中的结构化数据备份 FILESTREAM 数据

正如下一条语句所指出的,您实际上必须做更多的工作才能从备份中排除文件流数据:

如果您不想用关系数据备份 FILESTREAM 数据,可以使用部分备份来排除 FILESTREAM 文件组。

【讨论】:

【参考方案2】:

您可以参考this site,这将为您提供一些使用 SMO 进行数据库备份和还原的基本思路

【讨论】:

以上是关于如何在 C# 中使用 SMO 使用 FILE STREAM 备份和恢复数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# 中使用 SMO 列出可用的 SQL Server 实例?

通过 C# 和 SMO 检查和删除现有表

如何设置 SMO ScriptingOptions 以保证表的精确副本?

开始事务时出现 SqlServer.Management.SMO.Server 错误

使用 SMO 重启 SQL Server 实例

C# SMO 数据库不记录创建