Quantcast
Viewing all articles
Browse latest Browse all 3160

SQL Server Log Shipping学习总结

SQL Server的日志传送(log shipping)技术一直比较鸡肋,尤其当SQL Server 推出了Always On技术以后,估计使用日志传送(log shipping)这种技术方案的企业越来越少,但是日志传送也有自己的一些优点,有些特殊场景或业务背景下也有其存在的价值。最近由于特殊业务场景可能需要用到这个技术,所以做了一些测试和验证,比对一些知识做了一下总结、归纳。下面有部分内容从官方文档摘抄。此篇是总结性内容。如有不足,敬请指点!

日志传送 Log Shipping )介绍

SQL Server 使用日志传送,可以自动将 “ 主服务器 ” 实例上 “ 主数据库 ” 上的事务日志备份发送到 “ 辅助服务器 ” 实例上的一个或多个 “ 辅助数据库 ” 。

事务日志备份分别应用于每个辅助数据库。 可选第三个服务器实例(称为 “ 监视服务器 ” )记录备份和还原操作的历史记录及状态,还可以在无法按计划

执行这些操作时引发警报。

事务日志传送提供了数据库级别的高可用性保护。日志传送可用来维护相应生产数据库(称为 “ 主数据库 ” )的一个或多个备用数据库(称为 “ 辅助数据库 ” )。发生故障转移之前,必须通过手动应用全部未还原的日志备份来完全更新辅助数据库。日志传送具有支持多个备用数据库的灵活性。如果需要多个备用数据库,可以单独使用日志传送或将其作为数据库镜像的补充。当这些解决方案一起使用时,当前数据库镜像配置的主体数据库同时也是当前日志传送配置的主数据库。

日志传送的拓扑结构图如下所示:


Image may be NSFW.
Clik here to view.
SQL Server Log Shipping学习总结

优点:

可以为单个主数据库配置一个或多个辅助数据库(每个数据库都位于单独的 SQL Server 实例上),提供灾难恢复解决方案。

支持对辅助数据库的受限的只读访问权限(在还原作业之间的间隔期间)。可做简单的读写分离。

允许用户将延迟时间定义为:从主服务器备份主数据库日志到辅助服务器必须还原(应用)日志备份之间的时间。 例如,如果主数据库上的数据被意外更改,则较长的延迟会很有用。 如果很快发现意外更改,则通过延迟,您可以在辅助数据库反映此更改之前从其中检索仍未更改的数据

缺点:

容易出现异常,导致数据不一致。而且出现异常后基本无法补救,需要重新初始化。

日志传送配置不会自动从主服务器故障转移到辅助服务器。 如果主数据库变为不可用,需要手动将辅助数据库联机。

没有自我纠错、自我验证的处理机制。

数据同步有延迟。

相关术语(摘自官方文档)

主服务器 ( primary server )

位于生产服务器上的 SQL Server 实例。

主数据库 ( primary database )

希望备份到其他服务器的主服务器上的数据库。 通过 SQL Server Management Studio 进行的所有日志传送配置管理都是在主数据库中执行的。

辅助服务器 ( secondary server )

想要在其上保留主数据库的热备副本的 SQL Server 实例。

辅助数据库 ( secondary database )

主数据库的热备用副本。 辅助数据库可以处于 RECOVERING 状态或 STANDBY 状态,这将使数据库可用于受限的只读访问。

监视服务器 ( monitor server )

跟踪日志传送的所有详细信息的 SQL Server 的可选实例,包括:

主数据库中事务日志最近一次备份的时间。

辅助服务器最近一次复制和还原备份文件的时间。

有关任何备份失败警报的信息。

备份作业

一种 SQL Server 代理作业,它执行备份操作,将历史记录信息记录到本地服务器和监视服务器上,并删除旧的备份文件和历史记录信息。

启用日志传送后,将在主服务器实例上创建作业类别 “ 日志传送备份 ” 。

复制作业

一种 SQL Server 代理作业,它将备份文件从主服务器复制到辅助服务器中的可配置目标,并在辅助服务器和监视服务器中记录历史记录。

在数据库上启用日志传送后,将在日志传送配置中在各辅助服务器上创建作业类别 “ 日志传送复制 ” 。

还原作业

一种 SQL Server 代理作业,它将复制的备份文件还原到辅助数据库。它将历史记录信息记录在本地服务器和监视服务器上,并删除旧文件和旧历史记录信息。 在数据库上启用日志传送后,在辅助服务器实例上会创建作业类别 “ 日志传送还原 ” 。

警报作业

一种 SQL Server 代理作业,它在备份或还原操作在指定阈值内未成功完成时为主数据库和辅助数据库引发警报。 在数据库上启用日志传送后,在监视服务器实例上会创建作业类别 “ 日志传送警报 ” 。

配置日志传送 Log Shipping 的先决条件

主数据库必须使用完整恢复模式或大容量日志恢复模式,将数据库切换为简单恢复模式会导致日志传送停止工作。

在配置日志传送之前,您必须创建共享,以便辅助服务器可以访问事务日志备份。 这是对生成事务日志备份的目录的共享。

例如,如果将事务日志备份到目录 C:\data\tlogs\ ,则可以对该目录创建 \\primaryserver\tlogs 共享

配置日志传送

Viewing all articles
Browse latest Browse all 3160

Trending Articles