Log shipping 部署及配置

【声明】本文为AdamsLee原创,转载请注明出自围炉网并保留本文有效链接:Log shipping 部署及配置, 转载请保留本声明!

Log shipping 部署及配置
1.     在primary 和 secondary 机器上创建账户sqllogshipper且在两台机器上的密码相同。
2.     在primary 机器上创建LSBackup目录(e.g. d:LSBackup),添加共享并赋予sqllogshipper 和everyone读写权限。
3.     在secondary 机器上创建LSCopyDest目录(e.g. d:LSCopyDest),添加共享并赋予sqllogshipper 读写权限和everyone读权限。
4.     设置primary 和 secondary 机器上的”SQL Server Agent (MSSQLSERVER)”服务以sqllogshipper身份启动。
5.     在primary 机器上备份Lba数据后拷贝到secondary机器上
6.     在secondary 机器上restore 备份数据库。注意Restore options要设为 restore with norecovery 或者 restore with standby 而非默认的restore with recovery。(建议使用restore with norecovery, standby模式容易出现restore失败的情况:Message 2013-01-05 12:04:20.62     *** Error: Could not apply log backup file '\dpbx12LSCopyDestLba_20130105035600.trn' to secondary database 'Lba'.(Microsoft.SqlServer.Management.LogShipping) *** 2013-01-05 12:04:20.62     *** Error: Exclusive access could not be obtained because the database is in use. RESTORE LOG is terminating abnormally.(.Net SqlClient Data Provider) ***)

Figure 1
7.     在primary 机器上进入management studio -> 选择Lba数据库 -> 右键Properties –> Check “Enable this as a primary database in a log shipping configuration”

Figure 2
8.     点击Backup Settings…按钮设置备份频率,比如每两分钟备份一次。点击OK。

Figure 3
9.     点击Secondary databases -> Add… 按钮,添加Secondary Server。选择”Initialize Secondary Database” Tab -> ”No, the secondary database is initialized”;

Figure 4
10.     选择”Copy Files” Tab -> 设置复制job频率

Figure 5
11.     选择”Restore Transaction Log” Tab -> 设置还原job频率及报警,点击OK。

Figure 6
12.     点击OK完成log shipping 设置。
13.     拷贝SMSAlerter 工具到primary 机器
14.     如果需要的话,修改app.config 中DailyAlertLimit, AlertDestination, MessageQueuePath值。
15.     添加SQL Server Agent  Job:在Jobs上右键New Job,设置Name: SMSAlert,Category: Log Shipping;

Figure 7
16.     点击Steps,添加step,点击OK。

Figure 8
17.     点击OK,完成Job添加。
18.     右键 SQL Server Agent -> Alerts -> Log shipping Primary Server Alert,点击Properties,点击Response,选中”Execute Job” -> SMSAlert。点击OK。

Figure 9
19.     拷贝SMSAlerter 工具到secondary 机器。
20.     如果需要的话,修改app.config 中DailyAlertLimit, AlertDestination, MessageQueuePath值。
21.     添加SQL Server Agent  Job:在Jobs上右键New Job,设置Name: SMSAlert,Category: Log Shipping;
22.     点击Steps,添加step,点击OK。
23.     点击OK,完成Job添加。
24.     右键 SQL Server Agent -> Alerts -> Log shipping Secondary Server Alert,点击Properties,点击Response,选中”Execute Job” -> SMSAlert。点击OK。

Log Shipping Recovery
1.     将尚未拷贝到secondary 机器上的transaction log文件拷贝到secondary机器
2.     查看secondary机器上当前自动恢复到了哪一个transaction log文件(可通过查看LSRestore_DPBX11_Lba Job 历史记录得到)

3.     将尚未恢复的transaction log手动恢复,注意手动恢复时选择restore with norecovery

4.     最后通过restore database Lba with recovery获得最新的数据库
5.     Disable log backup/copy/restore jobs while the primary is down

此条目发表在Uncategorized分类目录,贴了, 标签。将固定链接加入收藏夹。