SQL Server 2005复制

我们有一个SQL Server 2005,它包含4到5个数据库,每天都在外部进行更新。目前,我们正在备份数据库并附加到不同的服务器上并对其进行处理,以确保在原始数据库中没有任何内容被删除或更改。

但是,这种备份和恢复过程已成为麻烦,所以我已经查找了像replcation服务的选项,但我似乎没有安装复制组件,我试图安装它们,但我只能看到Subcription服务不是发布服务器我们使用SQL的任何方式服务器2005年快递版是复制最好的赌注,或者你build议任何其他方式?

如果是的话,我们如何获得复制组件? 如果不是,其他的方式是什么?

提前致谢

你可能想看看这篇文章在databasejournal.com。 特别值得注意的是这一段:

您应该记住,SQL Server 2005 Express Edition安装中默认不包含复制function。 通过在设置向导的“functionselect”页面上展开“数据库服务”节点,可以访问控制此行为的选项,并且可以通过将“将在本地硬盘上安装”值赋予其复制条目进行修改。 另外,如果您打算利用连接和复制pipe理对象(RMO),则应该将相同的设置应用于向导的同一页上的“客户端组件”节点的“连接组件”子节点。 如果您在初始设置过程中错过了这些步骤,只需启动SQLEXPR32.EXE(或64位系统的SQLEXPR.EXE)即可修改现有实例(有关此过程的背景信息,请参阅我们之前的文章)。

SQL Express不支持发行商的复制服务。 这是一个授权问题。 Sql Express只允许您订阅现有的出版物。

您可以决定设置预定的备份作业,而不是复制。 由于作业pipe理在sql express中不可用(我想你不想为完整的Sql Server许可证付费),你可以find第三方软件来让你pipe理这些任务。 我想你应该谷歌'sql express作业调度程序'或类似的请求。

复制真的就像用大象枪射击苍蝇。

为什么不用一个不同的名字恢复你的数据库呢? 例如,你可以有“MyProductionDB”和“MyTestDB”。 然后编写备份和还原脚本,只需要在刷新testing实例时运行脚本(请注意,备份和还原对话框顶部有“生成脚本”button)。

或者,执行相同的脚本备份/恢复,但如果无法更改数据库名称,则创build一个testing实例。 testing实例甚至可以在同一台物理机器上 – MyComputer \ SQLExpress和MyComputer \ SQLExpressTest。

复制在这里可能是过度的,因为它的devise更多的是连续传输数据,而不仅仅是一个工作的备份副本。 显然有定期的复制方法(快照),但我仍然认为这比你想要做的更多。

如果两个数据库实例位于同一台服务器上(或者对公共networking位置具有可见性),那么您可以在第二次(或任何延迟是可行的)30分钟后的第一次和每日恢复时安排每日备份。 这样,它会自动发生。

我只是设置一个更复杂的过程,以防你没有一个共同的networking位置。 源上的batch file通过OSQL创build备份,然后将其压缩并使用FTP脚本通过Internet发送。 我们目的地上的另一个脚本将会看到FTP接收文件夹中的文件,将其解压缩,然后使用OSQL将其恢复,并在完成后发送电子邮件通知。 绝对更复杂,但也是一个select,如果你需要的灵活性。