Sqlserver实现故障转移 — sqlserver镜像备份实现故障转移(3)
目的:在已经加域的计算机上安装sqlserver2012,并配置数据库镜像实时同步,并实现故障转移。
在数据库层面实现故障自动转移后,应用程序里改怎么写数据库连接呢?其实使用ADO.NET或者SQL Native Client解决了这个问题,能够自动连接到故障转移后的伙伴,连接字符串如下所示
ConnectionString="DataSource= A;Failover Partner=B;Initial Catalog=AdventureWorks;Integrated Security=true;" DataSource= A;
此时,如果数据库发生故障转移,则应用程序会自动切换连接到转移后的数据库实例。
域控的建立详见:https://www.cnblogs.com/xiaoerlang90/p/9224745.html
计算机加域:https://www.cnblogs.com/xiaoerlang90/p/9234805.html
域控:
名称:dcTest.com
IP: 192.168.31.20
用户名:sql_admin
密码:dcTest2018
主数据库服务器(已加域):
计算机名:db01-PC
IP: 192.168.31.201
域用户/密码:sql_admin/dcTest2018
操作系统:不限。
数据库:sqlserver2012 R2
辅数据库服务器(已加域):
计算机名:db02-PC
IP: 192.168.31.202
域用户/密码:sql_admin/dcTest2018
操作系统:不限。
数据库:sqlserver2012 R2
见证数据库服务器(已加域):
计算机名:wt-PC
IP: 192.168.31.196
域用户/密码:sql_admin/dcTest2018
操作系统:不限。
数据库:sqlserver2012 R2
---------------------------------------------------------------------------------------------------------
步骤
配置防火墙:由于计算机加域后防火墙会自动开启,此时需要配置db01-PC、db02-PC、wt-PC 三台服务器的出入站规则(其中1433端口为sqlserver实例默认端口,5022为侦听端口),出站规则同入站规则:

三台服务器分别安装sqlserver2012 r2 ,安装步骤此处不再赘述。
分别配置SQL server服务登陆账户如图:

转到db01-PC, 打开sqlserver management studio,创建在SQL Server 2012 使用SQL语句创建了一个名为“镜像”的端点:
USE [master]
CREATE ENDPOINT [镜像]
STATE=STARTED
AS TCP (LISTENER_PORT = 5022, LISTENER_IP = ALL)
FOR DATA_MIRRORING (ROLE = PARTNER, AUTHENTICATION = WINDOWS NEGOTIATE
, ENCRYPTION = REQUIRED ALGORITHM RC4)

创建需要备份的数据库:SyncTest。并备份

备份完成后将备份文件拷贝到db02-PC服务器中,然后将其恢复到镜像数据库中。使用数据库镜像技术时,镜像数据库需要处于“Restore With NoRecovery”状态。在还原操作时一定要勾选“Restore With NoRecovery”选项。如图所示:

开始配置数据库镜像备份及故障转移:右键需要备份的数据库选择 -任务-镜像,如图所示:

运行模式选择“带故障转移的高安全(同步)。。。”,单击“配置安全性” 开始配置。

我们这次演示使用了2台SQL Server服务器,一台见证服务器,配置“包括见证服务器实例”的步骤需要将选项勾选为“是”,选择后点击下一步,弹出“选择要配置的服务器”对话框中默认勾选“见证服务器实例”,确认无误后点击下一步。如图所示:
在“主体服务器实例”对话框,默认会显示本机已经配置了的侦听器端口和端点名称,确认无误后点击下一步。如图所示:

配置镜像数据库,选择浏览更多,弹出数据库实例登陆窗口,输入db02-PC的ip,选择sqlserver身份验证,输入用户名及密码登陆即可,如图所示
配置见证服务器,步骤同镜像服务器配置步骤。

确认ip,侦听端口,及端点名称无误后,点击“下一步”,如图所示:

设置数据库实例登陆账户:

最后,确认所有信息无误后,点击“完成”,即可完成数据库镜像配置。如图所示:


5、完成配置
完成上述配置后,会有提示信息,询问是否立即“开始镜像”。点击“不开始镜像”,回到配置对话框。如图所示:

在配置对话框,核对配置信息无误后,点击“开始镜像”,如图所示:

此时主服务器数据库显示状态如下图:

辅服务器显示如下图:

在断开主服务器连接时,会自动切换到辅服务器,辅服务器变成主服务器,也可通过切换故障转移切换主、辅服务器角色。
经验证在域控服务器断开的情况下,db01与db02之间还是可以进行备份及切换。可以启动数据库尽享监视器查看数据库状态:

对已经加域的服务器,在脱域的情况下如何利用缓存登陆域账户:
可进入本地策略(运行命令:gpedit.msc)
Sqlserver实现故障转移 — sqlserver镜像备份实现故障转移(3)的更多相关文章
- 【SqlServer系列】开启Sqlserver远程访问
1 概述 已发布[SqlServer系列]文章如下: [SqlServer系列]SQLSERVER安装教程 [SqlServer系列]数据库三大范式 [SqlServer系列]表单查询 [SqlS ...
- SqlServer 由于未在SqlServer的此实例上安装复制组件解决方法
sqlserver2005在复制订阅时出现: “由于未在SqlServer的此实例上安装复制组件,Microsoft SQL server 无法访问这些组件,请参阅SQL Server……” 解决方法 ...
- 无需安装SqlServer打开并管理SqlServer数据库的方法
本地安装的数据库是SqlServer2008R2的 在附加一个数据库文件时出现了以下错误 错误的原因就是附加的数据库版本太高,而本地数据库版本太低导致的 通过各种方式才查询到附加的数据库版本是SqlS ...
- 【故障】MySQL主从同步故障-Slave_SQL_Running: No
转自:http://www.linuxidc.com/Linux/2014-02/96945.htm 故障现象:进入slave服务器,运行:mysql> show slave status\G ...
- RabbitMQ集群出现过机器故障,网络异常等故障后,重启无法重新建立集群的终极解决方案
由于机器掉电,网络故障等原因,RabbitMQ整个集群出现问题.重启RabbitMQ时,发现某些机器始终无法重新加入到集群中,而且还可能出现网络分区. 针对不同情况,可能选择 rabbitmqctl ...
- 在Cygwin中出现JAVA_HOME出现故障找不到出现故障
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u012516914/article/details/37689937 JAVA_HOME出现故障后查 ...
- php+sqlserver之如何操作sqlserver数据库
https://blog.csdn.net/xia13100004562/article/details/58598872 2016年12月19日 17:15:39 阅读数:6790 前面已经基本配置 ...
- SQLServer 日期函数大全 SQLServer 时间函数大全
原文地址:https://www.cnblogs.com/zhangpengnike/p/6122588.html 一.统计语句 1.--统计当前[>当天00点以后的数据] SELECT * F ...
- 企业案例 【故障修复】mysql主从故障解决过程
由于配置有zabbix监控,某日收到zabbix监控主从报警,,查看mysql状态, showslave status \G; slave复制状态有误,SLAVE_SQL_RUNNING为NO, 接着 ...
随机推荐
- jenkins+docker+docker-compose持续集成
一.前期准备 1.宿主机安装docker,传送门 2.宿主机安装JDK,传送门 3.宿主机安装maven,传送门 4.宿主机安装git yum install git 5.宿主机安装jenkins,传 ...
- java-udp编程
TCP/IP UDP都是基于传输层的:而udp发送数据会出现丢包的情况,发送一个数据不管对方接收不接收,发送过去就完事了: udp的特点:将数据源和目的封装成数据包中,不要建立连接:(Datagram ...
- docker安装redis并允许外网访问
拉取redis镜像 docker pull redis:3.2 本地新建redis配置文件 redis.conf ,写入以下内容 #允许外网访问bind 0.0.0.0 daemonize NO pr ...
- 对称加密算法DES、3DES和AES 原理总结(转载)
1.对称加密算法 1.1 定义 对称加密算法是应用较早的加密算法,技术成熟.在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yue)一起经过特殊加密算法处理后,使其变成复杂的加密密文发 ...
- 字符串操作-格式化输出-Python
字符串操作示例 去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = ...
- jQuery文档操作之插入操作
append() 语法 父元素.append(子元素) 解释:追加某元素,在父元素中添加新的子元素.子元素可以为:string/element(js对象)/jQuery元素 代码如下: var oli ...
- AcWing:143. 最大异或对(01字典树 + 位运算 + 异或性质)
在给定的N个整数A1,A2……ANA1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少? 输入格式 第一行输入一个整数N. 第二行输入N个整数A1A1-ANAN. 输出格式 输出一 ...
- Python之禅 this模块
The Zen of Python, by Tim Peters Beautiful is better than ugly.Explicit is better than implicit.Simp ...
- Go 结构体与初始化
Go 通过类型别名(alias types)和结构体的形式支持用户自定义类型. 结构体是复合类型,当需要定义类型,它由一系列属性组成,每个属性都有自己的类型和值的时候,就应该使用结构体,它把数据聚集在 ...
- 2018-2019-2 20165215《网络对抗技术》Exp8 Web基础
目录 实验内容 基础问题回答 实验步骤 (一)Web前端HTML (二) Web前端javascipt (三)Web后端:MySQL基础:正常安装.启动MySQL,建库.创建用户.修改密码.建表 (四 ...