Wednesday, April 30, 2014

Change the drive letter that holds Exchange 2013 Database

I was working on Exchange migration project and i was need to change the drive letter that holds one of our Exchange mailbox databases, the following steps i did to change the Exchange configuration to point to the new database file path as well as changing the disk letter and its name,

Note: i was not moving the Database from Disk to another new disk, i just wanted to change the drive letter as i had to configure a Database copy on another Exchange server Within DAG as the Exchange by default will use the same drive letter configured in the Active Database for locate the Database and log for the copy database.

1- Dismount the Database using ECP or Powershell "Dismount-Database -Identity MyDatabase"
2- Change the drive letter using computer management
3- Reconfigure the Exchange database file path using the following Powershell CMD
"Move-DatabasePath -Identity DB03 -EdbFilePath “J:\Program Files\Microsoft\Exchange Server\V15\Mailbox\DB03\DB03.edb” –LogFolderPath “L:\Program Files\Microsoft\Exchange Server\V15\Mailbox\DB03” –ConfigurationOnly $true"

Note: In my case I have used "-ConfigurationOnly" switch as no need to make the exchange move the database from disk to another as it is the same drive
"The ConfigurationOnly switch specifies whether the configuration of the database changes without moving any files. A value of $true changes the configuration. A value of $false changes the configuration and moves the files. The default value is $false."

4- Mount the database again using ECP or Powershell "Mount-Database -Identity\MyDatabase"

When you use the Move-DatabasePath cmdlet, consider the following:
  • This cmdlet fails if it's run while the database is being backed up.
  • If the specified database is mounted when this cmdlet is run, the database is automatically dismounted and then remounted, and is unavailable to users while it's dismounted.
  • This cmdlet normally can be run on the affected Mailbox server only. An exception is that this cmdlet can be run on an administrator's workstation when using theConfigurationOnly parameter with a value of $true
  • This cmdlet can't be run against replicated mailbox databases. To move the path of a replicated database, you must first remove all replicated copies, and then you can perform the move operation. After the move operation is complete, you can add copies of the mailbox database.