前面的博文中和大家聊了很多关于域的话题,比如说额外预控、域的恢复等,但是大家可否知道我们上面说的这些都是靠两个域之间的数据库相互复制实现的,那么域之间的数据究竟是如何复制的呢,下面我们就来聊聊域数据库的复制原理:

在聊之前我们首先要知道一下几个关键问题:

1、域数据库存放的位置:c:\\windows\ntdsntds.dit

2、站点:一组高速且可靠连接的计算机称为站点

域的复制分为以下两种模式:

1、多主机复制模式:一台域控制器内的数据库发上变化,会通知其他域控制器进行同步。(15s同步一次)

2、紧急数据:会立即同步到PDC主机。

数据库复制遵循以下原理:

当域控中的控制器数量发生变化,例如增加或减少域控制器上的进程,KCC就会进行Active Directory复制括扑的计算。KCC被翻译成知识一致性验证器,我们在任务管理器的进程列表中看不到KCC,因为它属于LSACC进程的一部分,KCC可以自动计算出域控制器进行计算时所有的括扑,当域控制器数量减少时,KCC倾向于在域中使用环形括扑进行Active Directory进行复制。也就是说,当一个域控制器的Active Directory内容发生变化时,这个更改不会同时传递给其他域控制器,而是要沿着KCC设计的环形括扑一一传递下去。而且为了实现冗余以及为了提高效率,KCC设计的括扑还是双环括扑。下图(图一)就是一个域控制器的括扑示意图,从图中可以看到,每个域控制器都有两个复制伙伴,Active Directory的复制沿着顺时针和逆时针两个方向进行。

图一

域的数据库复制遵循以下规则:

1、对象属性:对象的修改次数即版本号(属性从1开始)

2、修改时间:在不同的DC上对对象修改的时间。(靠后优先)

3、修改对象的DC的GUID:对比GUID号大小。(谁大谁优先)

OK,说了这么多文字性的东西详细许多朋友看的都困了,下面我们就通过一个小实验来为大家说明一下:

server01、server02是一个域控的故障转移群就,我们在server01上新建用户,然后利用我们前面说的windows server backup 工具对其进行 系统备份,然后删除用户,在利用我们所备份的数据对其进行恢复,请问所删除用户能还原成功吗?

实验准备:

1、两台windows server 2012的服务器

2、两台服务器做成故障转移群集

3、安装windows server backup

具备上述条件以后我们开始实验:

首先我们打开server01的服务器管理器:

点击工具:

点击Active Directory用户和计算机:

鼠标右键我们的域名:

点击新建:

点击组织单位:

输入我们要新建的组织单位名称,在这里我输入text,点击确定:

鼠标右键我们新建的text:

点击新建:

点击用户:

在这里我新建用户tom,点击下一步:

输入用户密码,点击确定:

新建用户完成,我们打开另一台域控的用户和计算机:

可以看到,此域控也有TOM用户。

ok,下面我们开始对server01的域控进行备份:

打开server01的服务器管理器:

点击工具:

点击windows server backup:

点击本地备份:

点击一次性备份:

系统弹出备份向导,我们保持默认点击下一步:

注意,这里要选择自定义,点击下一步:

点击添加项目:

这里我们勾选系统状态,点击确定:

点击下一步:

系统询问我们备份位置,我们选择本地磁盘,点击下一步:

可以看到系统已经自动读取出我们的E盘了,点击下一步:

点击备份:

备份开始,我们等待备份结束:

OK,备份完成,点击关闭。

下面我们删除tom这个用户:

打开服务器管理器:

点击工具:

点击用户和计算机:

鼠标右键TOM:

点击删除:

点击是:

OK!可以看到TOM用户已经被删除!

下面我们利用我们刚刚备份的对其进行恢复:

重新启动计算机,在计算机开机时按F8,进入安全模式:

这里我们选择进入目录修复模式:

我们以本地管理员身份登陆:

点击管理----windows server backup:

点击本地备份:

点击恢复:

注意这里勾选此服务器点击下一步:

这里可以看到我们要恢复的信息,点击下一步:

注意这里勾选系统状态,点击下一步:

这里勾选原始位置,点击下一步:

点击确定:

点击恢复:

点击是:

OK系统开始恢复,我们稍等片刻:

恢复完成,系统提示我们重新启动,我们点击 重新启动

重启完成,系统提示我们按回车键继续,我们按下回车键:

进入桌面后系统给我们弹出服务器管理器,我们点击工具:

点击用户和计算机:

OK,进来之后我们发现我们所要恢复的用户TOM并没有成功恢复,这究竟是为什么呢?

如果仔细阅读刚开始我所说的东西的朋友一定会明白其实这是因为数据库复制遵循对象属性这个规则,我在备份时tom这个用户的版本号小许我删除时候的版本号,所以我在还原时候的版本号自然也就小于我删除时候的版本号,所以对象还原不成功。但是有些情况下这个对象是必须要还原成功的,那么我们就应该使用如下办法:

必须进行授权还原,手动增大对象的属性。具体操作如下:

重新启动系统,在开机时按F8进入安全模式:

这里我们选择进入目录修复模式:

我们以本地管理员身份登陆:

点击管理----windows server backup:

点击本地备份:

点击恢复:

注意这里勾选此服务器点击下一步:

这里可以看到我们要恢复的信息,点击下一步:

注意这里勾选系统状态,点击下一步:

这里注意一定要勾选对Active Directory文件执行授权还原,然后点击下一步:

点击确定:

点击恢复:

点击是:

开始恢复,我们等其恢复完成:

OK,回复完成,注意这里我们先不重启,在这里我们同时按下WIN+R:

输入cmd:

这里我们输入增大属性命令:ntdsutil,然后敲回车:

然后我们输入activate instance ntds,敲回车:

然后我们输入授权还原命令:authoritative restore,敲回车:

然后我们输入:restore object cn=tom,ou=text,dc=abc,dc=com,敲回车:

系统问我们是否确定进行授权还原,我们点击是:

OK,这里可以看到我们的版本号已经被增大到100000。现在我们点击重新启动:

开机之后打开服务器管理器:

点击工具:

点击用户和计算机:

我们可以看到,用户tom已经被成功恢复。

OK,到这里我们的实验就已经完成了,如果有不懂得朋友可以提问。

Active Directory数据库复制原理相关推荐

  1. Active Directory的复制拓扑,Active Directory系列之八

    Active Directory的复制拓扑    在前面的博文中我们在域中部署了额外域控制器,而且我们已经知道每个域控制器都有一个内容相同的Active Directory数据库,今天我们要讨论一下额 ...

  2. Active Directory 复制指南

    在引入 Windows 2000 Server 和 Active Directory 之前,许多企业环境都依赖 Windows NT 作为其服务器基础结构及进行身份识别与访问管理.自 Windows ...

  3. Active Directory 域滲透 (如何访问数据库?)

    数据库数据交互,域控制器提供了几个选项来转换为它们支持的各种协议/服务: LDAP 端口: LDAP 定义了一种查询语法,允许您过滤需要在数据库中检索/编辑的对象.您可以按对象的属性过滤对象.例如,要 ...

  4. Active Directory网域

    Active Directory网域 3.1Windows网络的管理方式 3.1.1工作组模式 工作组由一组用网络连接在一起的计算机组成,他们将计算机内的资源共享给用户访问.工作组网络也被称为&quo ...

  5. 活动目录(Active Directory)

    Active Directory和活动目录是同义词,已合并. 活动目录 百科名片 活动目录(Active Directory)是面向Windows Standard Server.Windows En ...

  6. 详解操作主机角色,Active Directory系列之九

                           Active Directory操作主机详解<?xml:namespace prefix = o ns = "urn:schemas-mi ...

  7. Windows Server 8 Beta 初体验之三 Active Directory

    Windows Server系统,随着版本的升级,很多功能越来越依赖于Active Directory,越来越离不开Active Directory,所以在体验Windows Server 8 Bet ...

  8. Active Directory操作主机详解

    操作主机角色共有五种,分别是PDC主机,RID主机,结构主机,域命名主机和架构主机,今天的这篇博文将分别介绍五种操作主机的用途.我们先来介绍PDC主机,PDC是主域控制器的缩写,在NT4时代,域控制器 ...

  9. 用备份进行Active Directory的灾难重建:Active Directory系列之三

    用备份进行Active Directory的灾难重建 上篇博文中我们介绍了如何部署第一个域,现在我们来看看我们能够利用域来做些什么.域中的计算机可以共享用户账号,计算机账号和安全策略,我们来看看这些共 ...

最新文章

  1. 使用JSP/SERVLET实现在校学生管理系统
  2. 实用工具篇(三):Free Mybatis plugin
  3. WebRTC 的音频处理流水线
  4. android申请权限一次性申请多个,Android 批量申请权限
  5. [CF995F] Cowmpany Cowmpensation(树形dp,拉格朗日插值)
  6. leetcode 47. 全排列 II 思考分析
  7. 强大的 actuator 服务监控与管理
  8. vue router hash和history的区别_react-router-v4
  9. 计算机word的常用功能技巧,10个Word操作神技巧,看看你会多少?
  10. 一看就明白的超标量超流水线超线程简介
  11. 安卓监听是否有闹钟设置
  12. 中国工商注册企业全信息数据
  13. 川大计算机学院新生开学典礼,李怡院长2019级新生开学典礼致辞:成为一位有理想有情操有担当的川大人...
  14. java泛型——泛型类、泛型方法、泛型接口
  15. C# 16进制与2进制互转
  16. [nlp] LLS减少学习捷径:分析和缓解伪特征标签相关性
  17. 3D游戏中镜头的运用
  18. 安排座位 java_如何安排领导座次
  19. IDE,PATA,SATA,PCIe与SCSI接口
  20. 动态连接库和静态链接库

热门文章

  1. Java 程序员如何使用 Shiro 框架
  2. 优雅的使用 ThreadLocal
  3. 【pandas学习笔记】综合整理
  4. 华为诺亚开源首个亿级中文多模态数据集-悟空,填补中文NLP社区一大空白
  5. 斯坦福AI 5小时DNA测序破世界纪录!创人类新里程碑,成本仅3万
  6. 实时风格迁移,移动端运行,人脸特效又有了新玩法
  7. 又有多所高校延迟寒假开学
  8. 研究生第一篇科研论文常犯问题总结
  9. 树莓派避障小车(python)
  10. 美多商城之验证码(短信验证码2)