SQL server数据库高可用日志传送的方法
SQL Server 使用日志传送,您可以自动将“主服务器”实例上“主数据库”内的事务日志备份发送到单独“辅助服务器”实例上的一个或多个“...
SQL Server 使用日志传送,您可以自动将“主服务器”实例上“主数据库”内的事务日志备份发送到单独“辅助服务器”实例上的一个或多个“辅助数据库”,下面这篇文章主要给大家介绍了关于sql server数据库高可用日志传送的相关资料,需要的朋友可以参考下。
一. 日志传送概述
SQL Server使用日志传送,可以自动将主服务器的事务日志备份发送到一个或多个辅助数据库上。事务日志备份分别应用于每个辅助数据库。 可选的第三个服务器实例(称为“监视服务器”)记录备份和还原操作的历史记录及状态,还可以在无法按计划执行这些操作时引发警报。
可选的监视服务器,记录备份和还原操作的历史记录及状态。
下面话不多说了,来一起看看详细的介绍吧。
优点
- 提供灾难恢复解决方案
- 支持对辅助数据库的受限的只读访问权限
- 允许用户定义日志发送的延迟时间(如果主数据库上的数据被意外更改,则较长的延迟会很有用)
术语和定义
备份作业
主服务器的代理作业,它执行备份操作,将事务日志记录到本地服务器和监视服务器,删除旧的记录。
复制作业
主服务器的代理作业,它将备份文件从主服务器复制到辅助服务器上,在辅助服务器和监视服务器上记录。
还原作业
辅助服务器的代理作业,备份文件还原到辅助数据库,在本地服务器和监视服务器上记录,删除旧文件。
针对多个辅助服务器时,要重复执行复制作业和还原作业。
二. 准备工作
同一台服务数据库二个实例 (可以是局域网内的多个服务器)
主数据库sqlserver 2012 r2 MsSQLSERVERTWO
辅助数据库sqlserver 2012 r2 MSSQLSERVER
演示库 LogShipping_Test, 主和辅相同的库,相同的表结构和数据。 相同的sql 登录名, 密码
三. 配置日志传送
--步骤1:设置主服务器恢复模式为完全备份
ALTER
DATABASE
LogShipping_Test
SET
RECOVERY
FULL
--步骤2:主服务数据库做一次完全备份
BACKUP
DATABASE
LogShipping_Test
TO
DISK=
'D:\LogShipping\LogShipping_Test.bak'
WITH
NOFORMAT,INIT
-- 步骤3:
在主服务器上建立共享目录C:\LogShipping\primary 具有作业访问权限
在辅助服务器上建立共享目录C:\LogShipping\secondary 具有作业访问权限
---步骤4:
主服务器LogShipping_Test库-->属性-->任务-->传送事务日志将主服务器和辅助数据库配置成功后,设置复制和还原每隔两分钟做一次传送如下图
日志传送配置成功后:辅助数据库标识为(备用/只读)如下图
主数据库SQL Server代理作业如下图:
备份作业(LSBackup_LogShipping_Test)
警告作业(LSAlert_{计算机名})
辅助数据库SQL Server代理作业如下图
复制作业(LSCopy_{计算机名}_LogShipping_Test)
还原作业(LSRestore_{计算机名}_LogShipping_Test)
警告作业(LSAlert_{计算机名}\MSSQLSERVERTWO)
主服务器隔2分钟备份的文件共享目录如下图
辅助服务器隔2分钟复制的文件共享目录如下图
最后:查看日志传送是否正确无误
利用可视化操作在SQL Server代理作业中查看日志传送是否正常
通过SQL查询,看日志传送是否运行正常
--(主数据库查询)
exec
master..sp_help_log_shipping_monitor
exec
master..sp_help_log_shipping_primary_database
'LogShipping_Test'
--(辅助数据库查询)
exec
master..sp_help_log_shipping_secondary_database
'LogShipping_Test'
四. 主从数据库手动切换配置
步骤1:在主数据库,使之处于正在还原
use master
Backup log [LogShipping_Test]
to
disk =
'c:\LogShipping\LogShipping_Test1.bak'
with
NORECOVERY
--手动运行辅助数据库上的复制和还原作业(快速复制还原到从表)
--手动将主数据库上的备份和警告作业禁用掉(停止备份)
步骤2:在辅助数据库上,使用步骤的备件文件还原
use master
Restore log [LogShipping_Test]
from
disk =
'c:\LogShipping\LogShipping_Test1.bak'
with
RECOVERY
将以前备份和复制所在文件夹的数据删除掉(D:\LogShipping\primary,D:\LogShipping\secondary )
重新配置日志传送,在辅助数据库上(LogShipping_Test库-->属性-->任务-->传送事务日志将主服务器和辅助数据库配置成功后)使辅助数据库之变成主数据库
将原来主数据库的日志传送删除(LogShipping_Test库-->属性-->任务-->传送事务日志,将勾选去掉确定).
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,
-
Sql Server数据库开窗函数Over()的使用实例详解
文章主要介绍了Sql Server 开窗函数Over()的使用,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下利用over(),将统计信息计算出来,然后直接筛选结果集 declare @t table(...
-
SQL Server在分页获取数据的同时获取到总记录数的两种方法
本文通过两种方法给大家介绍SQL Server 在分页获取数据的同时获取到总记录数,感兴趣的朋友跟随脚本之家小编一起学习吧。SQL Server 获取数据的总记录数,有两种方式:1.先分页获...
-
Sql Server 数据库中调用dll文件的过程
文章主要介绍了Sql Server 数据库中调用dll文件的过程,非常不错,具有一定的参考借鉴价值,感兴趣的朋友跟随小编一起学习吧...
-
Sql Server 数据库获取字符串中小写字母的SQL语句
文章主要介绍了SqlServer 获取字符串中小写字母的实现方法,非常不错,具有一定的参考借鉴价值,需要的朋友跟随脚本之家小编一起学习吧有时候我们会截取字符串中的一些特殊想要的...
-
Sql Server数据库如何去掉内容里面的Html标签
文章主要介绍了Sql Server 去掉内容里边的Html标签的实现方法,代码超简单,具有一定的参考借鉴价值,需要的朋友可以参考下。...
-
SQL Server数据库远程更新目标表数据的存储过程
文章主要介绍了SQL Server 远程更新目标表数据的存储过程,适用于更新列名一致,主键为Int类型,具体实例代码大家参考下本文本文给大家分享一个远程更新目标库数据的存储过程,适用...
-
MsSql 数据库使用sqlplus创建DDL和DML操作方法
文章主要介绍了使用sqlplus创建DDL和DML操作方法,需要的朋友可以参考下,在window进入命令行模式敲sqlplus就会...
-
SQL Server常见问题介绍及快速解决建议
本文旨在帮助SQL Server数据库的使用人员了解常见的问题,及快速解决这些问题。这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架。...
-
SQL Server中Table字典数据的查询SQL示例代码
文章主要给大家介绍了关于SQL Server中Table字典数据的查询SQL的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着...
-
SQL SERVER 2012数据库自动备份的方法
文章主要为大家详细介绍了SQL SERVER 2012数据库自动备份的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下为了防止数据丢失,这里给大家介绍SQL SERVER2012数据自动备...