SQL Server 2008 R2 主从数据库同步(日志传送的方式 Log Shipping)

注意事项:

1、为主从服务器添加新的系统用户并设置好密码;

2、主从服务器都开启SQL Server的代理服务,并设置为开机自动启动

3、在数据库配置管理其中把SQL Server服务和SQL Server的代理服务的登录信息设置为上边添加的系统用户,并设置好密码。(记得主从服务器都需要这样设置,不要忘记了,我都是忘记了,怎么弄都不行)

4、用户共享的文件目录,共享访问时需要密码,记得要先访问共享并记住凭证,不然会提示失败。

5、SQL Server的备份,是主库的数据库服务器自动备份数据库,生成备份文件,在本分间隔时,再生成备份的日志文件(.trn文件)从库再根据从主库获取的日志文件进行还原操作,这样保证主从数据库的数据一致。只是,如果没有数据更新,还是会产生日志文件(.trn),并进行数据同步,影响网络带宽。

6、从库尽量不要分离,因为有时正在还原的过程中分离的,分离后再次附加时,会出现“不能附加正在还原的数据库。 (Microsoft SQL Server,错误: 1824)”的错误。

一、准备工作:

主数据库服务器:

操作系统:Windows Server 2008 R2

数据库: SQL Server 2008 R2

IP地址:192.168.1.61

从数据库服务器:

操作系统:Windows Server 2008 R2

数据库: SQL Server 2008 R2

IP地址:192.168.1.62

主数据库服务器中有WebDB,WebDB就是我们要同步的数据库,其中只有一个测试表WebDB,如下图所示:

从服务器数据库中没有数据库WebDB,WebDB数据库就是我们要同步的数据库,如下图所示:

二、创建SQL Server数据库的管理员用户和共享文件夹权限,设置SQL Server服务和SQL Server代理的登录用户为sqladmin

1. 在主数据库WebDB所在的服务器上创建用户sqladmin,点击开始——运行(或者按快捷键Win+R),输入命令lurmgr.msc,敲回车,在弹出的本地用户和组窗口中,新增用户:

新增用户的界面如下图:

设置sqladmin的权限隶属于Administrators

2. 同样需要在从数据库上创建用户sqladmin且加入administrators组,其他都删除之!

3. 分别在主从数据库服务器上创建用于存放主从备份日志文件的共享文件夹SQLDataBack且共享权限和NTFS权限,如下图所示:

4. 分别在主数据库服务器上和从数据库服务器上打开SQLServer配置管理器,将SQL Server服务和SQL Server代理服务的“登录身份为”sqladmin用户且启动模式为:自动,如下图所示:

一般SQL Server服务器的启动模式就是自启动,SQL Server代理服务是手动启动的,需要在服务里选择为自启动。

三、配置SQLServer日志传送

1. 在主数据库服务器上配置

用sqladmin连接到本地SQL Server数据库服务器(这边我试过,用Administrator用户登录也可以的)

在数据库实例(我这里数据库实例是SQL2008,就是在.\SQL2008上点击右键)中点击右键——属性——安全性,配置服务器身份验证模式和服务器代理帐户,其中代理账户是我们前边设置的sqladmin账户。

2. 在主数据库服务器中配置WebDB数据库的属性信息。

在WebDB数据库上点击右键——属性,打开数据库属性窗口,选择选项选项卡,把恢复模式选择为“完整”(默认也是完整的),如下图

再在数据库的属性窗口中选择“事务日志传送”选项,勾选“将此数据库启用为日志传送配置中的主数据库”,再点击“备份设置”按钮:

在事务日志备份设置窗口中设置如下图:

在上图中,点击“计划”按钮后,弹出如下图所示:

如果需要一直同步,在持续时间中,就选择无结束日期。一直点击确定,见到下图为止!

上图中上一个箭头指向的是我们刚才备份设置中,设置的备份计划,点击箭头指向的“添加”按钮,连接到从服务器的辅助数据库实例。

连接后,可以看到辅助数据库实例和辅助数据库名称。辅助数据库可以选择现有数据库,也可以输入一个名称,新建一个数据库,默认的辅助数据库名称,和需要同步的主数据库名称一致。

在初始化辅助数据库选项卡中,点击“还原选项”按钮,弹出还原选项窗口,如下图:

注意:该文件夹为从服务器的本地文件夹,即辅助数据库(同步库)的数据文件和日志文件需要存放的文件夹。不填写的话,则使用从服务器上的数据库实例默认的数据存放路径。

点击“复制文件”选项卡,输入从服务器复制文件的目标文件夹(注意是从服务器上的本地文件夹,也是我们前面在从服务器上设置的共享文件夹)。其中的删除时间,也需要跟我们的同步频率进行设置,同步频率越频繁,则删除复制文件的间隔也越短。

点击上图中的计划按钮,弹出“作业计划属性”窗口,设置从服务器同步间隔和是否有结束日期,点击确定即可。

选择“还原事务”日志选项卡,选择“备用模式”,如下图:

同时点击“计划”按钮,弹出“作业计划属性”,根据需要选择相应信息,点击确定即可。

将我们以上的配置信息导出到文件,如下图:

保存完配置脚本后,点击确定按钮,就开始保存日志并传送配置,成功的话, 你就可以看到如下界面。

注意:如果失败的话,会提示相应的错误信息,可以查看错误信息后。出现错误信息后,点击确定后,数据库属性的窗口就会关闭,我们再次在属性中打开,在“事务日志传送”就看不到我们配置的主从数据配置信息,我们可以重新配置。但是,我们还可以通过我们保存的脚本信息,在新建查询窗口中,执行我们保存的脚本。执行脚本后,就可以在数据库属性中的“事务日志传送”选项中看到我们设置的主从备份信息,改正错误,重新确定执行即可。

三、验证SQL Server 2008 R2主从数据库是否同步

1. 我们去从服务器看看是否有WebDB数据库,由下图所示,可见成功了!

2. 现在我们去主数据库服务器中WebDB数据库添加如下图所示的表:

创建表名为Sys_News

3. 现在我们去从数据库服务器的WebDB数据库是否有表Sys_News,如下图所示:

没有看到,因为我们设置的计划任务是15分钟的,15分钟没有到,所以没有同步上去。等15分钟后就有了。所以在同步的时候,一定要规划好同步时间。

注:如何删除WebDB(备用/只读)数据库

    在数据库上右键——属性——选项——状态——数据库为只读,修改为False即可!

时间: 2024-10-13 04:27:13

SQL Server 2008 R2 主从数据库同步(日志传送的方式 Log Shipping)的相关文章

SQL Server 2008 R2 主从数据库同步

一.准备工作: 主数据库服务器: OS:Windows Server 2008 R2    DB: SQL Server 2008 R2 Hostname : CXMasterDB  IP: 192.168.1.224/24    dg: 192.168.1.1 DNS: 192.168.1.19    DNS: 202.96.209.133 从数据库服务器: OS:Windows Server 2008 R2    DB: SQL Server 2008 R2 Hostname : CXSla

SQL Server 2008 /SQL Server 2008 R2 配置数据库邮件

原文:SQL Server 2008 /SQL Server 2008 R2 配置数据库邮件 从2005开始,就引入了"数据库邮件"功能.并且取代SQLMail.原有SQLMail可以继续使用. SQLMail要求有应用程序编程接口(Extended Messaging Application Programming Interface,MAPI),安装新的Office时可能导致SQLMail失败. 数据库邮件更加安全.可靠,并且不需要MAPI.具有群集感知能力.可以自动重传发送失败的

SQL Server 2008 R2 附加数据库 “尝试打开或创建物理文件 拒绝访问”的解决办法

其实是来自一篇SQL Server 2005同样错误的帖子,不过试了在SQL Server 2008 R2下面也有效,记录一下. 解决方法: 在所有程序—Microsoft SQL Server 2008 R2—配置工具—SQL Server 配置管理器,点击"SQL Server 服务",右边会显示正在运行的服务,以及对应的用户,右击SQL Server (MSSQLSERVER),选择“属性”,把内置帐户选择为"Local System",点击重新启动就OK了.

[sql server 2008 r2] 开启数据库远程连接

1. 打开sql2008,使用windows身份登录 2. 登录后,右键选择“属性”.左侧选择“安全性”,选中右侧的“SQL Server 和 Windows 身份验证模式”以启用混合登录模式 3. 选择“连接”,勾选“允许远程连接此服务器”,然后点“确定” 4. 展开“安全性”,“登录名”;“sa”,右键选择“属性” 5. 左侧选择“常规”,右侧选择“SQL Server 身份验证”,并设置密码 6. 右击数据库选择“方面” 7. 在右侧的方面下拉框中选择“服务器配置”:将“RemoteAcc

Microsoft SQL Server 2008 R2附加数据库报错5120解决办法

Microsoft SQL Server 2008 R2数据库附加报错5120,是权限的问题解决办法:邮件数据库文件的属性选中Authenticated Users 然后选中编辑把完全控制勾选上 单击确定,然后就可以附加数据库了 ! 若有疑问可以联系我www.jiangyong.net.cn,里面有我的QQ

VMware系统运维(四)SQL Server 2008 R2 新建数据库与ODBC数据

1.新建数据库,右击”新建数据库….“ 2.设置数据库名,初始数据库大小,如果要配置数据库优化,可以考虑初始大小与日志大小,点击添加安装完成,即完成数据库新建. 3.ODBC数据源配置,选择“系统DSN“点击”添加“选择”SQL Server Native Client10.0“完成. 4.创建SQL Server的新数据源,名称与服务器IP,下一步 5.输入登录ID:sa和密码,下一步 6.选择数据库为前面创建的数据库vcenterdb,下一步 7.点击完成. 8.测试数据库连接是否正常 在配

SQL Server 2008 R2 新建数据库

1.首先打开SQL Server Management Studio,右键单击数据库 2.点击新建数据库,会出现以下界面: 在数据库名称栏中输入自己需要的名称,如xx然后点击确定即可. 3.之后我们就可以在左边的列表中找到我们新建的数据库了如图: 搞定

SQL Server 2008 R2:快速清除日志文件的方法

本例,快速清理“students”数据库的日志,清理后日志文件不足1M. USE [master] GO ALTER DATABASE students SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE students SET RECOVERY SIMPLE GO USE students GO --此处需要注意,并非所有数据库的日志文件名都是“数据库名_log” DBCC SHRINKFILE (N'students_log' , 0,TR

SQL Server 2008 R2 制作数据库结构和数据脚本

数据库中包含众多表和数据,有时候需要创建脚本将表结构和数据一起导出 具体方法如下: 1.右键选择数据库,选择“任务”--->“生成脚本” 2.根据需求,选择制作脚本的对象,一般情况选择“表” 3.根据需求,选择脚本生成方式.个人习惯选择生成到新的查询窗口. 4.默认情况下,只制作表结构的脚本.如果有需要,上图中点击“高级”,在其中“编写脚本数据类型”选择“结构与数据” 然后一路Next就好了