sql数据库同步方式-麦库记事打开就出现同步
防范措施:
1、添加新的系统用户并设置主从服务器的密码;
2、主从服务器都开启SQL Server的代理服务,并设置为开机自动启动
3、在数据库配置管理中,将SQL Server服务和SQL Server代理服务的登录信息设置为上面添加的系统用户sql数据库同步方式,并设置密码。 (记住主从服务器都需要这样设置,不要忘了,我都忘记了,你怎么弄都不行)
4、用户共享的文件目录,访问共享时需要密码。 记得先访问共享,记住凭据,否则会提示失败。
5、SQL Server的备份是主库的数据库服务器自动对数据库进行备份,生成备份文件,生成备份日志文件(.restore操作,从而保证主从数据的一致性数据库,但是如果没有数据更新,还是会产生日志文件(.trn),同步数据,影响网络带宽。
6、尽量不要与数据库分离,因为有时在还原过程中分离,当分离并再次附加时,会出现“无法附加正在还原的数据库。(Microsoft SQL Server,错误:1824)”的错误出现。
一、准备工作:
主数据库服务器:
操作系统:WindowsServer2008R2
数据库:SQLServer2008R2
IP地址:192.168.1.61
从数据库服务器:
操作系统:WindowsServer2008R2
数据库:SQLServer2008R2
IP地址:192.168.1.62
主数据库服务器中有WebDB,WebDB就是我们要同步的数据库。 只有一张测试表WebDB,如下图所示:
从服务器数据库中没有数据库WebDB,WebDB数据库就是我们要同步的数据库,如下图:
2、创建SQL Server数据库的管理员用户和共享文件夹权限,并设置SQL Server服务和SQL Server Agent的登录用户为sqladmin
1、在主数据库WebDB所在服务器上创建用户sqladmin,点击开始-运行(或按快捷键Win+R),输入命令lurmgr.msc,回车,在弹出的本地用户中和组窗口,创建一个新的添加用户:
添加新用户的界面如下:
设置sqladmin的权限属于Administrators
2、还需要在副库上创建用户sqladmin并加入administrators组,其他的删掉!
3、在主从数据库服务器上创建一个共享文件夹SQLDataBack,用于存放主从备份日志文件,并共享权限和NTFS权限,如下图:
4、分别在主数据库服务器和从数据库服务器上打开SQLServer配置管理器,将SQL Server服务和SQL Server Agent服务的“登录身份”设置为“sqladmin用户”,启动方式为:自动,如下图所示:
SQL Server服务器的启动方式一般是自启动,SQL Server代理服务是手动启动的sql数据库同步方式,需要在服务中选择自启动。
三、配置SQLServer日志传送
1.在主数据库服务器上配置
使用sqladmin连接本地的SQL Server数据库服务器(我这里试过了,也可以用Administrator用户登录)
右击数据库实例(我这里的数据库实例是SQL2008,也就是右击.\SQL2008)-属性-安全,配置服务器认证方式和服务器代理账号,这里的代理账号就是我们设置的sqladmin上早先的帐。
2、在主数据库服务器配置WebDB数据库的属性信息。
右击WebDB数据库-属性,打开数据库属性窗口,选择选项选项卡,将恢复模式选择为“完全”(默认也是完全),如下图
然后在数据库的属性窗口中选择“Transaction Log Shipping”选项,勾选“Enable this database as the primary database in the log shipping configuration”,然后点击“Backup Settings”按钮:
在事务日志备份设置窗口,如下图设置:
上图中,点击“计划”按钮后,会弹出下图:
如果始终需要同步,请在“持续时间”中选择“无结束日期”。 继续点击确定,直到看到下图!
上图中最后一个箭头指向我们刚刚在备份设置中设置的备份计划。 点击箭头所指的“添加”按钮,连接从服务器的辅助数据库实例。
连接后,您可以看到辅助数据库实例和辅助数据库名称。 对于辅助数据库,您可以选择一个现有的数据库,也可以输入一个名称来创建一个新的数据库。 默认的辅库名称与需要同步的主库名称一致。
在“初始化辅助数据库”选项卡中,点击“恢复选项”按钮,弹出“恢复选项”窗口,如下图:
注意:该文件夹为从服务器的本地文件夹,即需要存放辅助数据库(同步库)的数据文件和日志文件的文件夹。 如果不填写,则使用从服务器上数据库实例的默认数据存放路径。
点击“复制文件”选项卡,输入从服务器复制文件的目标文件夹(注意是从服务器上的本地文件夹,也是我们之前在从服务器上设置的共享文件夹)。 删除时间也需要和我们的同步频率一起设置。 同步频率越频繁,删除复制文件的间隔越短。
点击上图中的Schedule按钮,弹出“Job Schedule Properties”窗口,设置从服务器同步的时间间隔和是否有结束日期,点击OK。
选择“Restore Transaction”日志选项卡,选择“Standby Mode”,如下图:
同时点击“计划”按钮,弹出“作业计划属性”,根据需要选择相应信息,点击确定。
将我们上面的配置信息导出到一个文件中,如下图:
保存配置脚本后,点击确定按钮保存日志并传输配置。 如果成功,可以看到如下界面。
注意:如果失败,会提示相应的错误信息,可以查看错误信息。 出现错误消息后,单击“确定”,数据库属性窗口将关闭。 我们在属性中再次打开,看不到我们在“Transaction Log Transfer”中配置的主从数据配置信息,我们可以重新配置。 但是,我们也可以使用我们保存的脚本信息在新的查询窗口中执行我们保存的脚本。 执行脚本后,可以看到我们在数据库属性中的“事务日志传输”选项中设置的主从备份信息,修改错误,重新确定执行。
3、验证SQL Server 2008 R2主从数据库是否同步
1、我们去服务器上看看有没有WebDB数据库,如下图,可以看出是成功了!
2、现在我们进入主数据库服务器中的WebDB数据库,添加表如下图所示:
创建一个名为 Sys_News 的表
3、现在我们去看看从数据库服务器的WebDB数据库中是否有表Sys_News,如下图:
没看到,因为我们设置的定时任务是15分钟,15分钟没有到,所以没有同步。 等了 15 分钟后,它就在那里。 所以在同步的时候,一定要规划好同步时间。
注意:如何删除 WebDB(备用/只读)数据库
右击数据库——属性——选项——状态——数据库是只读的,改成False就可以了!