In the last article in this series on Exchange Server 2013 Database Availability Groups we looked at the steps required for creating a DAG with two members.

In this article we will take a look at configuring database copies in the new DAG.

At this stage we have a database availability group with two Mailbox servers and a single database.

exchange-2013-dag-database-01

What we want to do is configure that database so that is is replicated to the second DAG member. This is referred to as adding a database copy.

An important step before adding the database copy is verifying that the same storage path exists on the server we’re adding the database copy to. The folder paths for the database as are as follows:

[PS] C:\>Get-MailboxDatabase "Mailbox Database 1" | select edbfilepath,logfolderpath

EdbFilePath   : E:Mailbox Database 1Mailbox Database 1.edb
LogFolderPath : F:Mailbox Database 1

E: and F: volumes have been configured on the second mailbox server already, so it is good to go.

In the Exchange Admin Center navigate to Servers -> Databases and select the database you wish to add a copy of. Click the “” icon and choose Add database copy.

exchange-2013-dag-database-02

Click Browse and choose the mailbox server to add a database copy to.

exchange-2013-dag-database-03

The Activation preference number will automatically increment to the next available number. E15MB1 already hosts the database with preference 1, so in this example the activation preference for the new database copy is 2.

Activation preference should generally reflect the order in which you’d like mailbox servers to host the active database copy, with 1 being the first preference, because it is used as a factor in automatic failover scenarios as well as when manually rebalancing the DAG.

If you click more options you’ll see additional settings for replay lag and for postponing the initial seed of the database copy. Neither of these are required for this particular scenario so I am not going to configure them at this stage.

Click Save to add the database copy.

exchange-2013-dag-database-04

If you look in the file paths on the server that you’re adding the database copy to you should see the seeding files as the database and transaction log files are copied across.

exchange-2013-dag-database-05

A small database over a fast network should not take more than a few minutes to finish seeding. Larger databases or slower networks will of course take longer.

exchange-2013-dag-database-06

When the operation is complete the second server will be hosting a passive database copy that is kept up to date through a process of continuous replication from the active database copy.

exchange-2013-dag-database-replication

The Exchange Admin Center will now show that two servers have copies of the database.

exchange-2013-dag-database-07

To the right of the page you’ll also see some more information about the health of the database copies.

exchange-2013-dag-database-08

Or you can also use Get-MailboxDatabaseCopyStatus to check the database copy health.

[PS] C:\>Get-MailboxDatabaseCopyStatus "Mailbox Database 1" | ft -auto

Name                      Status  CopyQueueLength ReplayQueueLength LastInspectedLogTime  ContentIndexState
----                      ------  --------------- ----------------- --------------------  -----------------
Mailbox Database 1E15MB1 Mounted 0               0                                       Healthy
Mailbox Database 1E15MB2 Healthy 0               0                 6/02/2013 10:14:37 PM Healthy

In the next part of this article series we’ll look further at managing database switchovers for Exchange 2013 Database Availability Groups.

[adrotate banner=”49″]

About the Author

Paul Cunningham

Paul is a former Microsoft MVP for Office Apps and Services. He works as a consultant, writer, and trainer specializing in Office 365 and Exchange Server. Paul no longer writes for Practical365.com.

Comments

  1. SUNIL NELLERI

    Hi Paul,

    I’m actually planning to add a new mailbox server in a different DR site. Ill be adding the mailbox server to the DAG but my concern is the log drive size. Say my DB drive is 300GB and log drive is 60GB. When I add the database copy on a different server, Will i be using the same size for the log drive or should i make the log drive same as 300GB on the DR mailbox server.

    Thanks

  2. Arun

    thanks for Update

  3. Arun

    hi Paul i have one doubt , we already have two exchange 2013 in same site using DAG concept, my requirement is we need to configure one more Exchange 2013 in another site with different network . It is possible to create new DAG or we can able to configure in same DAG

    1. Avatar photo
      Paul Cunningham

      If you want the new server to replicate the same databases then it will need to be made a member of the same DAG. You can add up to 16 servers to a DAG, and you can add/remove members any time, it is a non-disruptive change.

      The DAG members can be in different networks as long as they can communicate with each other. In fact it is recommended when placing DAG members in separate sites that they are in separate IP subnets, instead of stretching one subnet across two sites.

      Microsoft has published a document called “The Preferred Architecture” that explains a lot of DAG design best practices.

  4. Jeremy

    Hi Paul,

    Another great article. Was curious if you can specify the source server when adding a database copy via powershell? I’ll spare you the details but I don’t want it to seed across our WAN.

    Thanks

    1. Avatar photo
      Paul Cunningham

      When you run Add-MailboxDatabaseCopy there’s a -SeedingPostponed switch that will prevent the initial seed from occuring. You can then use Update-MailboxDatabaseCopy and specify the source server to seed from.

      1. Jeremy

        This is exactly what I needed, thanks!

  5. Sriram

    the seeding operation failed. error an error occurred while performing the seed operation . A timeout occur while communicating with server . A connection cannot be completed within 15 seconds.
    I have tried removing the copy by using the CMDLET remove-mailboxdatabasecopy format the drive on my passive server and tried adding again using shell Add-MailboxDatabaseCopy however still facing the same error.

    It is a 2 Node Exchange 2013 CU12 DAG on Server 2012 R2 ,on the same Site.

  6. Patrick Henry

    Hi Paul,

    We’re in the middle of a migration from Exchange 2007 to Exchange 2013. We have the Exchange 2013 CAS and mailbox servers installed and we are at the point of moving mailboxes from 2007 to 2013. Would it be better in your opinion to move the mailboxes first and then create the DAG or create it and then move the mailboxes? We have two different sites with one exchange 2007 and one exchange 2013 server in each and they are connected by a 100mb VPN connection. They also have a 50mb backup VPN connection between them as well. I could create a separate replication path with separate IP addresses but I don’t really get the point since the traffic will ultimately all be going over the same WAN link.

    Thanks,
    Patrick

    1. Avatar photo
      Paul Cunningham

      Well, lets say you want to test how your DAG responds to various failure scenarios (such as a server crashing). Would it be better to test that before moving production uses onto it, or after? 😉

      For the replication question, yes if they converge over the same WAN then there’s no point adding the complexity of a separate replication network.

      ” We have the Exchange 2013 CAS and mailbox servers…”

      If what you’re saying is you’ve installed separate CAS and Mailbox server roles, then you’ve deviated from best practice. Not too late to rebuild as multi-role servers.

      1. Patrick Henry

        Thanks Paul.

        I was actually thinking about the replication traffic between the two sites rather than the testing but the answer appears to be the same. If I create the DAG first, that will allow me to move mailboxes on to it gradually and then have them replicate between the sites as opposed to moving all the mailboxes and then trying to replicate 600gb between them. I just didn’t know if there could be an issue while moving them with the replication traffic for the DAG occurring at the same time.

        I should have said that a little better and used a slash instead of “and”. Both servers are multi-role.

  7. Savera Menezes

    Hi Paul,

    How do you check why a Database moved from current node and another node?

  8. Aaron

    Would it be possible after the initial configuration, to speed up the seeding process by dismounting the database and copying the files then mounting and resuming the copy?

  9. Jenny Lee

    I’m trying to add a database copy and I’m getting this error.
    An existing database is already configured with the same location “D:ExchangeLogs” for LogFolderPath.
    I have 2 CAS servers in a DAG and I moved both mailboxes and logs to the D drive of their servers. I’ve done this before with no problems but for some reason I am getting this message this time. What am I doing wrong?

    1. Avatar photo
      Paul Cunningham

      From the error message you’re receiving I would guess that the server you’re adding a database copy to already has another database hosted on it that has the logs located in that path.

      When you add a database copy to another server, the same path for the logs and database files is used on that server for that database. If the copy on SERVER1 uses D:ExchangeLogs for its transaction logs, then the copy you add to SERVER2 will use that same path. The path must exist and be available, not used by any other database on that server.

      Each database should use a unique database and log folder. Let’s say you have two databases named DB01 and DB02. I would configure them as follows:

      Name: DB01
      Database path: X:DatabasesDB01db01.edb
      Log path: Y:LogsDB01

      Name: DB02
      Database path: X:DatabasesDB02db02.edb
      Log path: Y:LogsDB02

      X: and Y: can be whatever drive letters you like.

      When you configure each database with a unique path like that you ensure that later when it comes time to add database copies there will be no conflicting paths.

      1. Jenny Lee

        That worked on one so far. Have to wait until after hours so I can move the database and logs of the active database server, then I can try adding the copy on that one.

  10. Vishnuvardhan Reddy V

    Nice Post.Got good info.

    I need the full DAG inplementation process with network configuration(like replication network) and Database .I would like to place 2 servers in the DAG environmet.What is your suggestions and what are the things we need to consider while configuring DAG and Exchange 2013 server.

    Thanks

  11. Dan

    Paul

    I have an Exchange 2013 with DAG environment with two servers, ServerA and ServerB. There is a mailbox database on both these servers with ServerA being the active server.

    My question is, there a configuration when in a failover event where the mailbox database becomes active on SeverB. Once ServerA is healthy again the database will automaticly fail back to ServerA?

    Thank you

  12. jazzy

    Thank you very very much for the post…!!
    Actually in my case i dont need to move the log databases to the mail databases but my manager asked me to do so.
    Because he said that we will be in shortage of drive letters.(he said we will need 12+12 drive letters each server for DAG, but actually there are only 6+6 drives)
    We have 6 database drives and 6 log drives. A and C letters are already used.
    I dont understand why he had told me that we will need total 24 drive letters.But in my knowledge we need only 12 (6 + 6 except C and A)
    You have any idea.

    Once again thank you
    jazzy

  13. Nelson M.

    Great article and greatly appreciated.

    I followed the steps and got stuck on starting the copies. When I created the database copy, I get this error:

    error
    The seeding operation failed. Error: An error occurred while running prerequisite checks. Error: The specified database isn’t configured for replication and therefore cannot be used to perform seed operations.

    The content index state showed failedandsuspended.

    I have check all setup in active directory and replication is working correctly.

    I am not sure what causing this error.

    Thank you for any help.

    Nelson

      1. Nelson M.

        yes is it. Maybe, I need to give it enough time to complete background process to fully configure the DAG.

        I ran get-databaseavailabilitygroup and it show the Name of the DAG with appropriate 2 member servers on each. However, the Operational servers column is empty.

        Nelson

        1. Avatar photo
          Paul Cunningham

          Need to use the -Status switch to see the operational servers.

          If you run Get-MailboxDatabase does the databases have a ReplicationType of Remote?

          1. David

            I am having the same error and circumstances. But when I do Get-Mailboxdatabase the ReplicationType is None on servers I have not tried to add a database copy to. How do I change them to remote?
            Thanks so very much!!

        2. Nelson M

          Operational server show the correct 2 member servers.

          The replication type is currently Remote.

          The reply button no longer available on your last post, I had to use the previous reply button. Also, accidentally started a new post.

        3. Nelson M

          That was my initial though, but I ran repadmin / replsummary on the domain controller and it showed no error.

        4. Nelson M.

          Paul,

          Well, it was embarrassing.. The initial issue I was having is due to my peer forgetting to add the necessary License key to the server.

          I am now able setup the DAG, but I am still having issue with copying.

          The database file wasn’t found after log replay. The copy will be set to failed. Database: ‘EXC08-1-ntapS6BEXC08D’. File Path: ‘Z:Exc08-mailbox1EXC08-1-ntap.edb’.

          I have confirmed that similar folder structure are on both servers. I am still investigating further. Do you have any insight?

          Nelson

          1. Steve

            Hi Nelson,

            I have the same error, did you find the solution?
            Thanks!
            Steve

  14. Fred

    Hi Paul,

    When I try to add a new database to the I get the error below. The database is still created, but not mounted. I only have two servers in the first DAG. I did try adding the Set-ADServerSettings –PreferredServer . But that didn’t help. Not sure what to look at now. All the servers check out ok with all the services running. I know I was able to add databases before the DAG without errors.

    error
    Failed to mount database “DB05”. Error: An Active Manager operation failed. Error: Couldn’t find the specified mailbox database with GUID ‘9a787174-b117-42b6-94cb-ea4rsbd69eef’. [Database: DB05, Server: EXMB02.domain.com]

    ——————————————————————————–

    Couldn’t communicate with the Microsoft Exchange Replication service on server “EXMB01.domain.com” to pick up new configuration changes for database “DB05”. Make sure that the service is running and that the server has network connectivity. Error: A server-side administrative operation has failed with this error: The database operation failed due to a transient condition. Error: The database operation failed due to a transient condition. Error: Unable to query Active Directory for database ‘9a787174-b117-42b6-94cb-ea4rsbd69eef’. You can try the operation again, and you may not get the error. [Database: 9a787174-b117-42b6-94cb-ea4rsbd69eef’, Server: EXMB01.domain.com]

    ——————————————————————————–

    Please restart the Microsoft Exchange Information Store service on server EXMB01 after adding new mailbox

      1. Fred

        I did find on one of the server had the IPv6 unchecked. But in the adaptors Advanced Settings -> MapiDagNetwork -> Bindings for MapiDagNetwork: everything is check.

        ReplicationNetwork -> Bindings for ReplicationNetwork: only IPv4 is check.

        What should be checked?

        1. Fred

          Do I want IPv6 enabled on the DAG replication network?

        2. Avatar photo
          Paul Cunningham

          IPv6 shouldn’t be disabled unless directed by Microsoft Support. Also, unfortunately many people disable it incorrectly.

          Andrew writes about it here:
          https://exchangemaster.wordpress.com/2013/07/10/once-again-unchecking-ipv6-on-a-nic-breaks-exchange-2013/

          My advice is that unless it has been fully disabled the correct way and under instruction of Microsoft Support that you should re-enable it.

          In my experience a DAG with IPv6 unchecked will experience weirdo communication errors like you’re seeing here.

        3. Fred

          Still getting the same error that is can not create the database on the secondary server. The database is only created on the primary server.

  15. Tim

    Hi Paul –

    I reference your sitearticles just about anytime I have an Exchange problem or question. They are an excellent point of reference. I do have a question as I’m in the process of deploying a HA 2013 DAG. Without reposting everything, if you get an opportunity, check out my questions here:

    https://social.technet.microsoft.com/Forums/office/en-US/4913b289-ebe8-4e09-a5a3-0c7a07e9c3b0/exchange-2013-highavailability-dag-setup-storage-question?forum=exchangesvravailabilityandisasterrecovery

    Let me know what your thoughts are if you have a chance. Thanks very much.

    1. Avatar photo
      Paul Cunningham

      Looks like your question is being answered in the TechNet forums, but it is also answered near the very beginning of the article above.

  16. Sunny

    Thanks Paul !!!!
    very helpful post.

  17. Ali Manzoor

    Dear Paul,

    If i have 2 Server,

    EXCH-01
    EXCH-02

    and Exch-02 only contain mailbox server role and i create DAG on Exch-01 with the database name of ABC, Can you tell me where it will create location in exch-02.

    Mean that i wana know location of Replica Datbase location in EXCH-02

    1. Avatar photo
      Paul Cunningham

      Every DAG member stores the database copy in exactly the same location.

  18. Rafael Mas

    Hi Paul,

    I am not to Exchange and I have been reading and following many of your postings.. Setting up my first DAG on Exchange 2013.. when I get to do the step for:

    In the Exchange Admin Center navigate to Servers -> Databases and select the database you wish to add a copy of. Click the “…” icon and choose Add database copy.

    I don’t see or have the option to copy on the Database DAG that I created.. I can only see the Active Server and it shows to be mounted there but they are no options only Dismount as an option appears when clicking on the … dots after the refresh button..

    Am I doing something wrong or missing something in here.. I need this so I can establish a healthy copy of this DAG on my second Exchange Server and ensure I have a failsafe..

    Appreciate your comments on this..

    Best Wishes and Happy Holidays..

    Rafael Mas.

    1. Avatar photo
      Paul Cunningham

      The option should appear after you’ve created the DAG and added the Mailbox servers as DAG members.

  19. Mitzi

    Appreciate your answers mate, thanks.

    I’ve posted another question, which I would really use your help.

  20. Mitzi

    Thank you for your comment.

    I have another question as I have failed to find it; can you stop auto-failover, without really suspending the passive DB? I want to do it manually (I don’t mean switchover and failover scenarios).

    Thanks.

    1. Avatar photo
      Paul Cunningham

      Using Suspend-MailboxDatabaseCopy with the -ActivationOnly switch will suspend it from being automatically activated.

  21. Mitzi

    Hi,

    Thank you for this great article. However, why is it important to have the same storage path on the second server which will host the passive DB?

    Since, Exchange will automatically choose the witness file location if left blank.

    Thanks.

    1. Avatar photo
      Paul Cunningham

      Those are two different things.

      Each DAG member will store its copy of the database and logs in the exact same path as the others. So each DAG member must have the same storage paths available.

      The File Share Witness directory is a completely different thing. You can specify your own path for that or let the system choose one for you.

  22. Danny

    Hi Paul,

    I love your articles, very informative and useful and simple to read. I am about to set-up the first DAG in our 2013 environment but my concern is Outlook connected across the local LAN.

    How do I set-up the database (both active and passive) so that Outlook will connect to the passive should that need to fail-over as the new active without the user even knowing about it? I think I am right in saying that Outlook connects via MAPI to the RPCClientAccessServer name of the database. How does this work in the event of 2 copies of that database on separate servers, maybe even separate sites in AD? The current databases RPCClientAccessServer names are simply the mailbox server name ‘LONDNT203.domain.com’ and that can be seen in the connection name of Outlook 2010. How does this work for fail-over for Outlook? Does this involve setting up a unique RPCClientAccessServer name (lets say the name is LONDDAG01) and setting this up in DNS to point to both servers that hold a copy of the database using round-robin?

    Thanks again for all of your help and advice

    Danny

      1. Danny

        Thats brilliant! Thanks again paul. That link explains a lot and is much clearer in my mind.

        Danny

  23. Chris

    this is the first error

    error

    The seeding operation failed. Error: An error occurred while performing the seed operation. Error: An error occurred while processing a request on server ”. Error: Database ‘c1d20890-45bb-41ba-bf7f-fd551375dc76’ was not active on source server ”. [Database:, Server: ]

    then I wait for a couple of seconds

    the I see on the right side the following
    Passive Failed and Suspended
    Copy queue length: 495
    Content index state: Suspended

    Resume | Update | Remove

    View details

    I do Update and then everything works?

    is not Little bit curious? or strange?

    1. KGOTONG

      I am also see the same thing, when I create database copies it always gives that error, but after I manually click on resume on the suspended copy it activates, but there is always that error when you create database copies, but they get created but remain suspended

  24. Chris

    Hi Paul I get the same error but if I wait for a few seconds the I refresh on ECP, I update the passiv copy
    and then works

    do you have any idea?

    Error: Database ’0cad42af-f321-4ff9-a582-ac211287d61e’ was not active on source server

  25. Sophony

    Hi Paul, I would like to know why I don’t have the option “Add Database Copy” on my exchange server 2013.

    Thanks

      1. Sophony

        Thanks Paul, you where right. But now I keep getting this error when I try to add database copy on my second exchange server:

        The seeding operation failed. Error: An error occurred while performing the seed operation. Error: An error occurred while processing a request on server ‘XXXXXX-1’. Error: Database ‘0cad42af-f321-4ff9-a582-ac211287d61e’ was not active on source server ‘XXXXXX-1’. [Database: ARCHIVES, Server: XXXXXX-1.xxxxxx.com]

  26. Yann

    Hi Paul,

    Great articles. Great Blog. Thanks for helping the Exchange Community. God Bless you Paul.

    Yann

  27. Joe

    Thanks for the great articles, I received links from Microsoft to these posts. I’m working on a DAG between two datacenters and I’m having trouble with this step of the process. I have two mailbox databases that I’m trying to copy from Datacenter A to Datacenter B. It is giving me this error message:

    error

    The seeding operation failed. Error: An error occurred while performing the seed operation. Error: An error occurred while processing a request on server ‘EX2013A’. Error: Database ‘d2f1a881-cfdd-462a-bb40-3cdae823afb2’ was not active on source server ‘EX2013A’. [Database: Resource2013, Server: EX2013B.domain.com]

    Thanks in Advance,
    Joe

    1. Avatar photo
      Paul Cunningham

      Are you trying to seed from an active and healthy database copy?

      1. Joe

        Yeah, I found that I had some issues with the cluster. The cluster is showing up on all networks now. After resolving that the databases on server A are showing in an unknown status on server B and likewise the other direction. I’m seeing an RPC service unavailable between the two servers. So I think that is my next hurdle is getting that issue resolved.

  28. Karan

    It was great to follow the step by step guide but I ended up with error, my “Users Mailbox Database” is not mounting, and getting the result as below.

    In my case I used the “Users Mailbox Database” and Log files are in the same path, D:Users Maibox Database.

    In addition my primary mailbox db which was created during the installation also dismounted and can’t mount in MBX02 – getting same error. (In my case primary server MBX02)

    [PS] C:Windowssystem32>Get-MailboxDatabaseCopyStatus “Users Mailbox Database” | ft -auto

    Name Status CopyQueueLength ReplayQueueLength LastInspectedLogTime
    —- —— ————— —————– ——————–
    Users Mailbox DatabaseMBX02 DisconnectedAndResynchronizing 0 0 20/09/2013 2:30:06 P
    Users Mailbox DatabaseMBX01 Dismounted 0 0

    [PS] C:Windowssystem32>mount-database ‘Users Mailbox Database’
    Database ‘Users Mailbox Database’ can’t be mounted on server ‘MBX01.domain.com’ due to a previous error:
    The Microsoft Exchange Replication service encountered an unexpected error in log replay for database ‘Users Mailbox
    DatabaseMBX01’. Error MapiExceptionMountInProgress: Unable to mount database. (hr=0x80004005, ec=2612)
    Diagnostic context:
    Lid: 65256
    Lid: 10722 StoreEc: 0xA34
    Lid: 1047 StoreEc: 0xA34
    Verify that the underlying cause of the error has been corrected before attempting to mount the database. The error
    can be ignored and the mount allowed if Mount-Database is reissued with the -Force switch.

    This database got only 2 users, I used for testing after setup 2 mailbox servers in Ex2013, and planned to do the migration from Ex2010. I stuck in this point,

    Any suggestion Paul.

  29. tien

    Hi,

    I have succesfully created the first dag, named dag01 with member server mbx01 and mbx02, the mailbox database replicated belong to mbx01.
    I would like to create a secondary dag named dag02 to replicate the mailbox database of mbx02 but I cannot find mbx01 and mbx02 on the add member menu. Do you have an idea ? thank you very much.

    1. Avatar photo
      Paul Cunningham

      A mailbox server can only be a member of one DAG.

      Why are you creating a second DAG? The databases on your MBX02 can be replicated to other members of DAG01.

  30. Mark McGaughey

    Paul, I really enjoy your articles, they are complete and easy to follow. I’m preparing to introduce Exchange 2013 to my existing 2007 Exchange environment. I plan on using a co-existing scenario but I’m curious to know if it is possible to build a 2013 DAG before I move my production over from the 2007 server? From everything I’ve read, I don’t see that this should be a problem. Any advice you could offer would be greatly appriciated. I will be using your articles to plan, prepare and deploy my new Exchange environment. Thanks for your efforts in helping out the Exchange community.

    1. Avatar photo
      Paul Cunningham

      You can create the DAG before or after your migration, it is entirely your choice. Exchange 2010 & 2013 both enable “incremental deployment” of DAGs. Adding a mailbox server to a DAG, adding database copies, these are all “no outage” actions.

      1. Mark McGaughey

        Thanks a lot for your advice.

    1. Nashaat Mena

      Hi Paul, it was very useful article. Do you have any article for 2 CAS in different site or with same site for MS Exchange server 2013. Thanks for your co-operation

Leave a Reply