sqlserver数据库同步
? 一、确认数据库运行环境是否配置正确打开SQL Server Management Studio,新建查询: ? select * from sys.servers? GO ? //这里可得到原来的计算机名称。然后将其记录下来(复制即可) ? ? 看这里的name是否和你的服务器的计算机名称一样,如果一样可以跳到文档(二),否则请按如下操作更改 ? 新建查询: ? sp_dropserver [你的SQL服务器名称] GO ? EXEC sp_addserver '你服务器的计算机名称','local','duplicate_OK' ? 然后重起sqlserver(我是直接重新起的计算机) 即可。。。 ? 一、配置主备机1、 物理连接将主备数据库按照如图所示连接: ?请先把备机中的VopMSsql数据库删除 2、 检查SQL Server 2005数据库要对数据库进行数据库镜像,必须将它更改为使用完整恢复模式。用 Transact-SQL 实现此目的,使用 ALTER DATABASE 语句: USE?master; ? 二、主备实例互通实现互通可以使用域或证书来实现,考虑实现的简单,以下选取证书的方式实现。注意:实现“主备数据库实例互通”的操作只需要做一次。 1、创建证书(主备可并行执行) --主机执行: USE?master; --备机执行: USE?master; ? 2、创建连接的端点(主备可并行执行)--主机执行: CREATE?ENDPOINT?Endpoint_Mirroring? --备机执行: CREATE?ENDPOINT?Endpoint_Mirroring? ? 3、备份证书以备建立互联(主备可并行执行)--主机执行: BACKUP?CERTIFICATE?HOST_A_cert?TO?FILE?=?'D:/HOST_A_cert.cer'; ?--备机执行: BACKUP?CERTIFICATE?HOST_B_cert?TO?FILE?=?'D:/HOST_B_cert.cer'; ? 4、互换证书将备份到D:/的证书进行互换,即HOST_A_cert.cer复制到备机的D:/。HOST_B_cert.cer复制到主机的D:/ 5、添加登陆名、用户(主备可并行执行)以下操作只能通过命令行运行,通过图形界面无法完成。 --主机执行: CREATE?LOGIN?HOST_B_login?WITH?PASSWORD?=?'vop'; --备机执行: CREATE?LOGIN?HOST_A_login?WITH?PASSWORD?=?'vop'; ? 三、建立镜像关系1、 手工同步登录名和密码通常来说数据库都将会有若干个用户作为访问数据库的用户,并且数据库会有相应的登录名,但是在备机中缺少与之相对应的登录名,例如某业务系统使用’vop’作为登录名访问数据库,但是在备机中没有’vop’这个登录名,因此一旦主备切换,业务系统就无法登录数据库了,这种情况称为"孤立用户" 在主数据库中执行如下语句: USE?master; 查找出相应的用户名和sid,例如:上述的’vop’ 在备数据库中执行如下语句: USE?master; 这里的’LoginName’即主数据库中的登录名,sid即是上述通过SQL语句查找出的sid。 例如,查询得到的sid和name如下所示。? sid?name
USE?master; 到此为止可以认为备机数据库的环境已经与主机同步了,还差数据库内的数据未同步。 2、 准备备机数据库1)备份主机数据库,备份类型选择“完整”,在备机中完全恢复。恢复时,在选项页面的恢复状态中,选择“不对数据库执行任何操作”。以名为test的数据库为例 --主机备份数据库: ? ? --备机还原数据库: ? 如果执行成功数据库将会变成这个样子: 2)备份主体数据库日志,在备机数据库中恢复。恢复时,在选项页面的恢复状态中,选择”不对数据库执行任何操作” 日志备份-恢复操作必须在数据备份-恢复后执行。 --主机备份数据库日志: ? --备机还原数据库日志: ? 3、 建立镜像--主机执行: ALTER?DATABASE?VopMSsql?SET?PARTNER?=?'TCP://192.168.0.2:5022'; --如果主体执行不成功,尝试在备机中执行如下语句: 备机执行成功后,再在主机中重新执行上述语句。 ALTER?DATABASE?VopMSsql? SET?PARTNER?=?'TCP://192.168.0.1:5022'; ? 如果执行成功,则主备数据库将会呈现如上图所示的图标。 四、测试操作1、主备互换 --主机执行: 1 USE?master; 2、主服务器Down掉,备机紧急启动并且开始服务 --备机执行: 1 USE?master; 3、原来的主服务器恢复,可以继续工作,需要重新设定镜像 1 --备机执行: 4、原来的主服务器恢复,可以继续工作 --默认情况下,事务安全级别的设置为 FULL,即同步运行模式,而且SQL Server 2005 标准版只支持同步模式。 --关闭事务安全可将会话切换到异步运行模式,该模式可使性能达到最佳。 1 USE?master; ? ?删除数据库镜像 1.?????? 连接到任一伙伴。 2.?????? 发出以下 Transact-SQL 语句: ALTER DATABASE <database_name> SET PARTNER OFF 其中,<database_name>?是要删除其会话的镜像数据库。 此语句可删除数据库镜像会话并从数据库中删除镜像。可以在任一合作伙伴上指定 OFF。有关删除数据库镜像的影响的详细信息,请参阅删除数据库镜像。 3.?????? 或者,可以恢复以前的镜像数据库。在作为镜像服务器的服务器实例上,输入: RESTORE DATABASE <database_name> WITH RECOVERY; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- SQL SERVER通过SQL语句直接把表导出为XML格式
- MySQL Order By索引优化方法
- SQL Server 总结复习 (二)
- 详解SQL Server数据库状态和文件状态
- 关于sqlserver 2005 导出数据表到excel2007 (*.xlsx)
- SQL Server 同一个sql语句 连接两个数据库服务器
- sql-server – 在SQL Server数据库之间传递用户定义的表类型
- 关于sqlserver 2008远程导入表数据
- sqlserver2008 端口占用 8080 ReportingServicesService.ex
- sql-server – 查找可操作SQL Server数据库的不必要索引的方