在 CCR 环境中使用 Exchange 命令行管理程序移动存储组和数据库

作为Exchange管理员或许会遇到需要对Exchange Server存储组和数据库更改存储路径的情况,在常规情况下,更改Exchange Server存储组和数据库的路径一项比较简单的操作,通常在图形界面下经过简单的几步操作即可,路径更改过程数据库会自动挂起并且更改之后自动装入。但 是Exchange Server 2007之后,在CCR环境中更改存储路径不再像以前那么简单,除非你是在安装群集连续复制被动节点之前进行路径更改,下面来介绍一下在CCR环境中如何 去更改存储组和数据库的存储路径。
在本文中将现有CCR环境中sg2存储组和数据库从现在的D盘移动到E盘中,开始之前先来看一下现有环境的情况,见下图:
clip_image002
从上图可以看出现在的存储组sg2存储路径为d:\ccr\sg2,并且目前的复制状态正常,下面开始路径更改的具体操作:
1. 由于是CCR群集连续复制环境,首先我们需要将群集复制操作暂时掉,打开“Exchange 命令行管理程序”,然后执行下面命令,详细见图:
Suspend-StorageGroupCopy -Identity <Server\StorageGroupName>
clip_image004
执行上面命令之后,在“Exchange管理控制台”中刷新一下,可以看到sg2存储组的复制状态已经更改为“已挂起”,如下图:
clip_image006
2. 暂停群集复制之后,接下来要将存储组下面的数据库卸除,执行命令见下图。这一操作也可以从 Exchange 管理控制台进行。
Dismount-database -Identity <Server\StorageGroupName\DatabaseName>
clip_image008
clip_image010
3. 卸除完数据库之后,现在来为存储组设置一个新的存储路径,命令如下。此 cmdlet 不会移动任何数据。
Move-StorageGroupPath -Identity <Server\StorageGroupName> -LogFolderPath <NewPath> -SystemFolderPath <NewPath> -ConfigurationOnly
必须在 CCR 环境中使用 -ConfigurationOnly 参数。系统或日志文件的新路径不能是卷的根目录。另外,如果路径名包含空格,则必须用引号将其括起。
clip_image012
4. 更改完存储组路径之后,接着更改数据库的存储路径。确保在执行移动操作之前卸除数据库。按如下方式运行 cmdlet:
Move-DatabasePath -Identity <Server\StorageGroupName\DatabaseName> -EdbFilePath <NewPath> -ConfigurationOnly
在 CCR 环境中,必须使用 -ConfigurationOnly 参数。新位置不能是卷的根目录。
clip_image014
5. 将文件移动到它们在主动和被动节点上的新位置。
6. 使用 Mount-Database cmdlet 在存储组中装入数据库。
Mount-Database -Identity <Server\StorageGroupName\DatabaseName>
clip_image016
clip_image018
7. 使用 Resume-StorageGroupCopy cmdlet 重新启动复制。若要重新启动存储组的复制活动,请运行以下命令:
Resume-StorageGroupCopy -Identity <Server\StorageGroupName>
clip_image020
clip_image022
8. 验证存储组的复制是否正常进行。
Get-ClusteredMailboxServerStatus -Identity:<Name>
clip_image024
从上图返回的结果看出CCR状态正常,至此,更改路径的操作已经顺利完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/549640.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++_练习—多态_证明vptr指针的存在

证明vptr指针的存在 1 // 证明vptr指针的存在2 3 #include <iostream>4 5 using namespace std;6 7 class parent {8 public:9 parent(int a) { 10 this->a a; 11 } 12 13 virtual void pri(void) { 14 cout << "parent &…

(转)解读NTFS(一)

NTFS是一个比FAT复杂的多的文件系统&#xff0c;我们一起努力来把它完整的解读出来 NTFS的引导扇区也是完成引导和定义分区参数&#xff0c;和FAT分区不同&#xff0c;FAT分区的BOOT记录正常&#xff0c;就显示分区没有错误&#xff0c;即使文件不正确&#xff0c;而NTFS分区的…

路由器硬件结构

路由器是一种连接多个网络或网段的网络设备&#xff0c;它能将不同网络或网段之间的数据信息进行“翻译”&#xff0c;以使它们能够相互“读”懂对方的数据&#xff0c;从而构成一个更大的网络。路由器由硬件和软件组成。硬件主要由中央处理器、内存、接口、控制端口等物理硬件…

C++_练习—多态_验证vptr分布初始化

验证vptr分布初始化 vptr指针是从父类逐渐指向子类的虚函数表 1 // 验证vptr分布初始化2 3 #include <iostream>4 5 using namespace std;6 7 class parent {8 public:9 parent(int a) { 10 this->a a; 11 cout << "parent 构造函数 …

分区表分区字段的update操作

默认情况下&#xff0c;oracle的分区表对于分区字段是不允许进行update操作的&#xff0c;如果有对分区字段行进update&#xff0c;就会报错——ORA-14402: 更新分区关键字列将导致分区的更改。但是可以通过打开表的row movement属性来允许对分区字段的update操作。 例&#xf…

OCP-052考试题库汇总(38)-CUUG内部解答版

You want to audit update statements that refer to USER1.DEPT.DNAME. Which type of auditing must you use? A)standard auditing B)mandatory auditing C)value-based auditing D)fine-grained auditing Answer: D 赵&#xff1a; Fine-Grained Audit(FGA)&#xff0c;精…

C++_练习—多态_纯虚函数与抽象类

纯虚函数与抽象类 含有纯虚函数的类&#xff0c;称为抽象基类&#xff0c;不可实列化。即不能创建对象&#xff0c;存在的意义就是被继承&#xff0c;提供族类的公共接口。 1 // 纯虚函数与抽象类2 3 #include <iostream>4 5 using namespace std;6 7 class shape {8 pub…

深入理解Linux内存映射机制

Author: wztEMail: [email]wztxsec.org[/email]Site: [url]http://www.xsec.org[/url]Date: 2008-6-13一. 绪 论二. X86的硬件寻址方法三. 内核对页表的设置四. 实例分析映射机制一. 绪 论我们经常在程序的反汇编代码中看到一些类似0x32118965这样的地址&#xff0c;操作系统中…

NetCore的配置管理(1)

学习NetCore的配置管理&#xff1b; 目录 命令行配置Json文件配置配置文件文本至C#对象实例的映射配置文件热更新总结命令行配置&#xff1a; 打开VS2017,新建NetCore控制台项目&#xff1b; 打开nuget包管理&#xff1b;添加Microsoft.Asp.NetCore.all&#xff0c;或者使用命令…

buffer busy waits

buffer busy waitshttp://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_idNOT&p_id34405.1当会话想要访问缓冲存储器中的数据块&#xff0c;而该数据块正在被其它会话使用时产生buffer busywaits事件。其它会话可能正在从数据文件向缓冲区存…

推荐几个EDA网站

http://www.cnblogs.com/jianyungsun/archive/2011/05/12/2044898.html 1. OPENCORES.ORG 这里提供非常多&#xff0c;非常好的PLD了内核&#xff0c;8051内核就可以在里面找到。 进入后&#xff0c;选择project或者由http//www.opencores.org/browse.cgi/by_category进入。 h…

SetupFactory安装制作心得

很多年前&#xff0c;因为仰慕Install Shield的鼎鼎大名&#xff0c;所以很是花了些功夫研究了一番&#xff0c;最后&#xff0c;基本上也可以打出很完善的包了&#xff0c;其中也不乏一些很有难度的事情&#xff0c;比如ODBC的打包等。但它实在太难用了&#xff0c;过上一段时…

Timus 1114. Boxes

Timus 1114. Boxes 要求计算出将两种颜色的球放到盒子中的各种组合的数目。1114. Boxes Time Limit: 0.6 second Memory Limit: 16 MB N boxes are lined up in a sequence (1 ≤ N ≤ 20). You have A red balls and B blue balls (0 ≤ A ≤ 15, 0 ≤ B ≤ 15). The red bal…

写作知识点

1.逻辑框架 2.起承转合 3.写作套路 4.述说,正述,倒序, 先说结果,分析原因,解决方案,,方案检查,紧急预案,预期结果 转载于:https://www.cnblogs.com/zeenzhou/p/11388739.html

Speerio Skinergy 'Image' is ambiguous 错误

使用BeyondCSS皮肤时报错&#xff1a;Could Not Load Skin: /Portals/0/Skins/beyondcss/1column_speerio.ascx Error: E:"Development"DotNetNuke"InstallArea"DotNetNuke_04.08.03_Source"Website"controls"Speerio"Skinergy"s…

Sql Server中自动序号的方法

第一种:使用identity函数增加临时表的方法 selectid identity(int,1,1),*into#tmp fromtableselect*from#tmp droptable#tmp 在SQL2005中新增了ROW_NUMBER()函数,给我们带来了很多方便,使用方法如下: SELECTid,ROW_NUMBER() OVER(orderbyid)asRowNumber FROMTable有一个方便,as…

js- 对象 toString 的结果 [ object Object ]

alert({ }); 输出 [ object Object ] 除了null和undefined之外&#xff0c;其他的类型(数值、布尔、字符串、对象)都有toString()方法&#xff0c;它返回相应值的字符串表现(并不修改原变量)。每个对象都有一个toString()方法。当该对象被表示为一个文本值时&#xff0c;或者一…

flex白板之图形绘制函数

图形的绘制 Graphics类提供了相关的方法&#xff1a; 1&#xff0c;清空画布 graphics.clear();2&#xff0c;设置画笔 graphics.lineStyle(thickness:Number NaN, color:uint 0, alpha:Number 1.0, pixelHinting:Boolean false, scaleMode:String "normal", ca…

程序员的工具箱奇形怪状

Snipaste 有道词典window客户端 转载于:https://www.cnblogs.com/ww01/p/11393340.html

请汇编高手注释的CompareText

这段代码是将两个字符串对象进行比较&#xff0c;忽略大小写&#xff0c;两个字符串缓冲区地址利用EAX和EDX两个寄存器传给该函数&#xff0c;字符串的长度用4个字节保存在缓冲区的前面&#xff0c;函数用EAX返回比较结果&#xff0c;结果为0表示相同。function CompareText(co…