复制从文件初始化
使用备份文件初始化日志复制
对于大的数据库使用快照初始化既影响性能又花费大量的时间,在某些情况下我们可以使用数据库备份做初始化。
1. 首先根据创建的Article建立发布。
2.修改 allow initialization from backup的选项为True.
3.备份发布数据库。
Backup databaseAdventureWorks2008 to disk ='C:\AdventureWorks2008.bak'
4.使用上面产生的备份还原订阅数据库
RESTORE DATABASE [repl_Inibackup] FROM DISK = N'C:\AdventureWorks2008.bak'
WITH FILE = 1,
MOVE N'AdventureWorks2008_Data' TON'C:\repl_Inibackup.mdf',
MOVE N'AdventureWorks2008_Log' TON'C:\repl_Inibackup_1.ldf'
5.在发布库上执行下面的脚步创建订阅:
use AdventureWorks2008
go
sp_addsubscription
@publication ='pub_Initbackup', --your pub name here
@subscriber='test', --subscriber server name
@destination_db='repl_IntiBackup', --destination db name
@sync_type = 'initialize with backup',
@backupdevicetype = 'disk',
@backupdevicename = 'C:\AdventureWorks2008.bak'
Go
6.在SSMS中可以看到订阅已经创建成功。
7.测试一下,在发布数据库更改数据在订阅数据库验证数据是否同步。
注意:因为还原是将发布库整个还原了,如果只想对部分对象做复制,可以将多余的对象删除。
注意账号权限
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器