作为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状态正常,至此,更改路径的操作已经顺利完成。