SqlServer Alwayson 搭建排错记录(二)
下面记录下建立好alwayson可用性组后,向可用性组内添加数据库出现过的问题及解决方法
一、数据库未处于恢复状态
将数据库联接到可用性组的时候报错:
数据库“XXXX”未处于恢复状态,而此状态是镜像数据库或辅助数据库所必需的。必须使用 WITH NORECOVERY 还原远程数据库。 (Microsoft SQL Server,错误: 1464)
  
这个问题好解决,就是还原辅助副本的时候,没有选择with no recovery选项

还原之后,在SQL Server Management Studio上查看数据库,后面有“正在还原”字样,这时可以将数据库联接到可用性组了。
二、镜像数据库包含的事务日志数据不足
镜像数据库 "XXXXX" 包含的事务日志数据不足,无法保留主体数据库的日志备份链。如果没有从主体数据库进行日志备份或者没有在镜像数据库上还原日志备份,则可能会出现这种情况。 (Microsoft SQL Server,错误: 1478)
The workaround for this is:
1) Disable your transaction log backup job
2) set your primary database to Simple recovery mode save the change
3) set recovery mode back to Full again
4) backup the database
5) restore on the mirror server in the "RESTORE WITH NORECOVERY" state
6) setup mirroring
7) re-enable your transaction logging on the primary server
翻译一下就是:
1)禁用事务日志备份作业,如果没有,可以忽略这步
2)将主副本的数据库设置为简单恢复模式并保存
3)再设置回去成完整恢复模式
4)备份数据库
5)在镜像数据库上,也就是辅助副本数据库上恢复这个备份文件,恢复的时候选择RESTORE WITH NORECOVERY选项
6)再将辅助副本联接到可用性组
7)重新启用事务日志备份作业,如果没有,可以忽略
另外,
数据库“XXXX”的远程副本没有恢复到足以启用数据库镜像或将其联接到可用性组的程度。您需要通过从主体/主数据库还原当前日志备份,将缺失的记录日志应用于远程数据库。 (Microsoft SQL Server,错误: 1408)
这个报错也可以用上述方法解决。
三、仅当您使用 master 数据库时,才允许可用性组 DDL 操作
仅当您使用 master 数据库时,才允许可用性组 DDL 操作。请运行 USE MASTER 命令,然后重试您的可用性组 DDL 命令。 (Microsoft SQL Server,错误: 35208)
一种方法是点击“脚本”,在生成的脚本开头手动增加use master语句。
 
还有一种方法是,在将副本添加到可用性组-连接到副本的时候,“连接到数据库”选择“默认”。这样,后续操作就不会报需要使用master的错误了。
  
SqlServer Alwayson 搭建排错记录(二)的更多相关文章
- SqlServer Alwayson 搭建排错记录(一)
		
这几天搭建alwayson,碰到一堆问题,解决起来花了不少时间,特此记下几个有代表性的,以免以后再碰到做重复功. 一.创建可用性组 使用SSMS的创建可用性组向导,添加了一个主副本node1,一个辅助 ...
 - SQLServer AlwaysOn在阿里云的前世今生
		
缘起 早在2015年的时候,随着阿里云业务突飞猛进的发展,SQLServer业务也积累了大批忠实客户,其中一些体量较大的客户在类似大促的业务高峰时RDS的单机规格(规格是按照 内存CPUIOPS 一定 ...
 - SQL 2014 AlwaysOn 搭建
		
AlwaysOn底层依然采用Windows 故障转移群集的机制进行监测和转移,因此也需要先建立Windows Cluster,只不过可用性组中的数据库不一定非要再存放在共享存储上了.可以是存储在本地磁 ...
 - Material Calendar View 学习记录(二)
		
Material Calendar View 学习记录(二) github link: material-calendarview; 在学习记录一中简单翻译了该开源项目的README.md文档.接下来 ...
 - mercurial(Hg) Server 搭建 过程记录
		
mercurial(Hg) Server 搭建 过程记录 1. 环境说明 只是测试搭建,环境为本机开发环境:win 8.1 + IIS8.5 软件准备: 2. 软件安装 先安装Python2.7, ...
 - Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客
		
==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...
 - 【运维技术】redis(一主两从三哨兵模式搭建)记录
		
redis(一主两从三哨兵模式搭建)记录 目的: 让看看这篇文章的的人能够知道:软件架构.软件的安装.配置.基本运维的操作.高可用测试.也包含我自己,能够节省对应的时间. 软件架构: 生产环境使用三台 ...
 - 前端常用功能记录(二)—datatables表格(转)
		
前端常用功能记录(二)—datatables表格 并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是 ...
 - 搭建Extjs框架(二)
		
搭建Extjs 框架 二.编写入口文件 app.js,配置extjs 组件\视图文件路径 并将app.js引入index.html 在app.js中指定一些文件的路径,Extjs页面的起始 ...
 
随机推荐
- vivado中使用debug不能连接到vcse_server
			
打开 Xilinx Design Tools -> ISE Design Suite 14.7 -> Accessories -> ISE Design Suite 64 Bit C ...
 - Linux进程KILL不掉的原因
			
做过Linux开发的人通常遇到过一个进程不能kill掉的情况,即使使用的是kill -9方式,而一般的教课书都只说kill -9能杀死任何进程,遇到这种情况时就会感觉到很矛盾,其它这也是正常的,通常有 ...
 - ubuntu下php7安装及配置
			
直接用apt-get 失败 在官网下安装包http://tw2.php.net/get/php-7.0.18.tar.bz2/from/a/mirror 进行make时 出现错误: libtool: ...
 - Java Script 学习笔记 -- 基础知识
			
Java script 概述 java Script 的简介 JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为 ...
 - [CentOS7] at, bash, cron, anacron
			
声明:本文主要总结自:鸟哥的Linux私房菜-第十五章.例行性工作排程(crontab),如有侵权,请通知博主 at => /var/spool/at /etc/at.allow, /etc/a ...
 - bzoj3171: [Tjoi2013]循环格(费用流)
			
传送门 其实这题的建图并不难(虽然我并没有想出来) 首先,每一个点的入度和出度必须为$1$ 那么我们考虑拆点 每个点的出度点向它能到达的点的入度点连边,容量$1$,如果方向为原来的方向则费用$0$否则 ...
 - Repeater+AspNetPager+Ajax留言板
			
最近想要巩固下基础知识,于是写了一个比较简单易懂实用的留言板. 部分样式参考了CSDN(貌似最近一直很火),部分源码参照了Alexis. 主要结构: 1.前期准备 2.Repeater+AspNetP ...
 - Macbook sublime 安装markdown插件
			
Sublime Text为3 版本 安装sublime text 插件,需要“***”,不会弄的,就可以移步了. 首先按 command + shift + p 调出安装插件的界面,输入“instal ...
 - Filter&Listener
			
Filter&Listener 内容待补充... ...
 - vue项目中将后台返回的创建时间(时间戳格式)转换成日期格式
			
第一步:下载安装依赖包 npm install -save moment 第二步: 在main.js文件引入 1. import moment from 'moment' 其中还包含 2. //全局过 ...