镜像安装的环境:

主机:win server 2012 , sql server 2012 ,ip:192.168.1.189  PC账户:administrator
备机:win server 2012 , sql server 2012 ,ip:192.168.1.190  PC账户:administrator
无见证服务器(witness)

镜像准备工作:

1.设置主数据库为完整模式 
2.完整备份主数据库并备份数据库的完整日志文件 
3.将备份文件拷贝到镜像数据库并选择还原数据库 (还原选项 norecovery(即不对数据库执行任何操作),镜像数据库现在(正在还原...) 
如图:

说明:

a.镜像服务器备份的是用户的数据库,不是系统的数据库,比如不能镜像master,msdb,model和tempdb

b.镜像的数据库对象恢复模式必须是完整的,不能是简单和大容量日志类型的

c.备机镜像不能被访问,正常情况下一直处于正在还原的状态

d.主机可以被访问,正常情况下一直处于主体正在同步的状态

e.主机和备机的5022端口必须没有被占用

镜像实施:

1.准备工作完成对主数据库开始做镜像
2.这里的数据库实例服务账户,最好单独一个账户来管理主数据库与镜像数据库,方便以后数据库的管理.这里要注意确保这里填写的账户可以正常数据库,否则会出问题

3.配置完成,如图开始镜像

4.主数据库显示(主体,已同步), 镜像数据库显示(镜像,已同步/正在还原...)

 

镜像出现的问题:

1.服务器网络地址 “TCP://xxx:5022″ 无法访问或不存在。请检查网络地址名称,并检查本地和远程端点的端口是否正常运行。 (Microsoft SQL Server,错误: 1418)

后来在SQLServer日志中看到了如下错误:  Database mirroring connection error 4 ‘An error occurred while receiving data: ’10054(远程主机强迫关闭了一个现有的连接。)’.’ for ‘TCP://xxx:5022′.

 通过这个错误找到了问题,c:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\ 没有读写权限,一看真的是这样,加入管理员(即sqlserver的运行用户)的读写权限后一切正常!(如果还不行,配置权限后,再重新配置镜像)

 具体见:http://dba.stackexchange.com/questions/6222/mirroring-problems-after-removing-domain

2.TCP://xxx:5022 的数据库镜像连接错误 5 'Connection handshake failed. The login 'ZBIAN\Administrator' does not have CONNECT permission on the endpoint. State 84.'。

 在日志中看到如上这个错误,发现是因为镜像数据库实例没有权限

 对主数据库与镜像数据库进行了调整,主数据库与镜像数据库使用相同的实例账户,并重新启动数据库服务SQL Server (MSSQLSERVER)

镜像可用性解决办法:

1.主体与镜像转换

--主机
use master;
alter database dataName set partner failover;
执行成功后原主体数据库会显示正在还原,备机数据库显示主体正在同步字样
 
2.测试主备切换
主机崩溃,强制备机当主机,原主机恢复后再切换回去
主机A
备机B
此时,在B机上执行
use master;
alter database dataName set partner FORCE_SERVICE_ALLOW_DATA_LOSS; --强制接收
停止主机A的SQL SERVER 服务(比如断电),此时备机上的数据库会显示正在恢复状态,大概持续几十秒,最后变成
dataName(主体,已断开链接),即现在的镜像B可以用来充当主机了
假如现在有业务往数据库里插也是能成功的
现在把原主机A恢复(通电),然后在B机里操作
use master;
alter database dataName set partner resume;
此时A机是作为镜像的,B机是作为主机的,要再切换一下,则再在B上执行
alter database dataName set partner failover; 

sql server 2012 镜像和出现的问题的更多相关文章

  1. Microsoft SQL server 2012数据库学习总结(一)

    一.Microsoft SQL Server2012简介 1.基本概要 Microsoft SQL Server 2012是微软发布的新一代数据平台产品,全面支持云技术与平台,并且能够快速构建相应的解 ...

  2. SQL Server 数据库镜像

    标签:SQL SERVER/MSSQL SERVER/数据库/DBA/镜像 概述 本章内容主要讲述数据库镜像的安装,安装环境是在域环境下进行安装. 环境:SQL Server 2008 r2 企业版 ...

  3. SQL Server 2012复制教程以及复制的几种模式

    简介 SQL Server中的复制(Replication)是SQL Server高可用性的核心功能之一,在我看来,复制指的并不仅仅是一项技术,而是一些列技术的集合,包括从存储转发数据到同步数据到维护 ...

  4. 分享SQL Server 2012/2014内存数据库,AlwaysOn,参考教材与网上总结

    Sql Server 2012 高可用性的几种方案的比较,AlwaysOn优势何在 对Sql Server 2012 高可用性与灾难恢复的几种方案的比较,复制,集群,镜像优劣何在,新生技术Always ...

  5. SQL Server 2012实施与管理实战指南(笔记)——Ch3Alwayson可用组

    3.AlwaysOn可用组 Alwayson支持的,是一个可用性组,每个可用性组是包含了多个用户数据库的容器,可用性组内的数据库可以作为一个整体进行故障转移. AlwaysOn关键特性: 一.类似集群 ...

  6. 系统升级日记(1)- 升级到SQL Server 2012

    最近一段时间在公司忙于将各类系统进行升级,其最主要的目标有两个,一个是将TFS2010升级到TFS2013,另外一个是将SharePoint 2010升级到SharePoint 2013.本记录旨在记 ...

  7. SQL Server 2012 各版本功能比较

    有关不同版本的 SQL Server 2012 所支持的功能的详细信息. 功能名称 Enterprise 商业智能 Standard Web Express with Advanced Service ...

  8. SQL Server 2012 AlwaysOn集群配置指南

    1. AlwaysOn介绍 AlwaysOn是SQL Server 2012提供的全新综合.灵活.高效经济的高可用性和灾难恢复解决方案.它整合了镜像和群集的功能,基于OS 故障转移群集(Windows ...

  9. 【转】SQL Server 2012 配置AlwaysOn(三)

    转载自:http://www.cnblogs.com/lyhabc/p/4682986.html 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http:/ ...

随机推荐

  1. imagemagick 图像处理扩展

    做图像处理的一个工具. http://www.imagemagick.org/script/command-line-processing.php 支持命令行模式,支持接口调用.php 等等都可以,看 ...

  2. 用Cookie和Session实现用户登录 函数

    由于网页是一种无状态的连接程序,你无法得知用户的浏览状态,必须通过Cookie或Session记录用户的有关信息. Cookie: 是一种在远程浏览器端储存数据并以此来跟踪和识别用户的机制. PHP透 ...

  3. NET Core 介绍

    NET Core 介绍 标签: ASP.NETCore 1. 前言 2. ASP.NET Core 简介 2.1 什么是ASP.NET Core 2.2 ASP.NET Core的特点 2.3 ASP ...

  4. 正确决解Hibernate4.*中:Connection cannot be null when 'hibernate.dialect' not set

    <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hi ...

  5. FastRPC 3.2 发布,高性能 C++ 协程 RPC 框架

    用过go erlang gevent的亲们应该都会知道协程在应用中带来的方便. 如果对协程不理解的同学,通过阅读下面例子可以快速了解我们框架的协程的意义,已了解的可以跳过这部分. 协程例子:假设我们要 ...

  6. Oracle数据导入导出imp/exp(转)

    在oracle安装目录下有EXP.EXE与IMP.EXE这2个文件,他们分别被用来执行数据库的导入导出.所以Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 一.Oracle ...

  7. CC++初学者编程教程(13) 基于Oracle linux 的Oracle12c环境搭建

    1设置虚拟机选项 2 设置文件夹共享 3启动文件夹共享向导 4 设置共享文件夹 5 启用共享 6 关闭虚拟机设置 7 开启虚拟机 8 登陆帐户 9 看见虚拟机桌面 10 安装vmwaretools 1 ...

  8. 解决Admob Banner首次展示不显示的问题

    Admob banner在第一次虽然加载成功了,但是却不显示.然后等待60秒刷新自动刷新,banner就能正常显示. 如果你没遇到过这种情况,那可能你用的不是集成在play-services里的库,因 ...

  9. SVG关注复杂图形的网页绘制技术

    SVG 是使用 XML 来描述二维图形和绘图程序的语言. 学习之前应具备的基础知识: 继续学习之前,你应该对以下内容有基本的了解: HTML XML 基础 如果希望首先学习这些内容,请在本站的首页选择 ...

  10. wcf系列学习5天速成——第四天 wcf之分布式架构

    今天是wcf系列的第四天,也该出手压轴戏了.嗯,现在的大型架构,都是神马的, nginx鸡群,iis鸡群,wcf鸡群,DB鸡群,由一个人作战变成了群殴....... 今天我就分享下wcf鸡群,高性能架 ...