Log shipping a distribution server

  • Hi,

    I'm trying to get log shipping to work with a distribution server used in transactional replication. Shipping the distribution database is no problem but the issue is in failover getting the distributor to talk to the publisher. The replication monitor won't display anything - distribution or log reader agents. I could only get this all to work by renaming the standby server to that of the primary server, and then restoring both the master and msdb databases.

    Has anyone done this and know all the steps necessary to get this to work. I can't even find a white paper on the net with the info I want. I'm not sure if it is necessary to do all that I am doing. I also think there could be a problem with a role change - but I haven't tested that yet.

    Any help appreciated.

    This looks like a hard one for many as I've posted many places with no response.



  • This was removed by the editor as SPAM

  • What exactly are you looking at ? Are you trying to setup replication and log shipping on the same machines for the same databases ? Is so, why do you want both the options.

    Please provide with more info. to help you better.

    What is the size of the database you want to duplicate ? What is the purpose of creating a duplicate ? What is the load on your OLTP server ? Is the secondary server of the same config. of your original server ?



  • I thought my message was straight forward. I have a distrbution server used in transactional replication - I've setup log shipping for the distribution database and when failing over the distributor, it will not talk to the publisher unless both the msdb and master databases are restored from the primary server.

    Log shipping is our DR solution. So the publisher and distributor are two separate servers and log shipping is going to two separate servers again for DR.

  • Hi

    This is quite tricky. Here is some reasons why.

    Assume the setup, Server Pub (publisher), sub (subscriber) and dist (remote distribution) and DR Dist for the DR distribution

    If you backup your distribution database , you can restore it to the same instance and aside from a break in the connection and potential missing transactions you will be fine, you can be more fine depending on your retention (i.e. making sure you have data between backup and cleanup from the cleanup agents). You can also be in a better place when you run sync with backup. In this case the data on the publisher will stay in the publisher log untill backed up, thus is you distribution database fails you the missing commands between point of failure and the distribution backup will be re delivered by the log reader, very awesome.

    If you restore this backup of the Dist to to DR Dist server you have several issues.

    1 - once it's restored it's user database. This is one of the reasons why you need to restore the master also.

    2 - if it's remote distribution the your replication jobs, agents log and distribution and cleanups reside on this same instance and this is where the MSDB comes in, so that you can have the jobs on your DR instance you also need to restore this database.

    In my opinion there are easier ways for ensuring Replication DR.

    1 - sync with backup on publisher but the trade off is bigger logs. Depending on the frequency of your distribution backups.

    2 - use a long retention period on your distributor , this will ensure commands is available when the subscriber fails and is restored from a backup.

    You need to determine the point of failure you want to cover. I have always argued that distribution is a "system" db. Store and forward. The leaner the meaner. this reduce complexity for distribution DR. However you need to ensure you subscriber is covered.

    The publisher database is assumed to be covered because 1, if it's worth replicating it should probably get full backups now and then and log backups. When these are restored it will ensure replication continuation.

    If this doesn't answer your question it's perhaps worth to be slightly more specific on the area you wish to guard yourself against failure such as pub, dist or sub. List your recovery models on all of those and also the retention and how each of them are currently being backed up. Are you trying to guard against physical failure of hardware, potential software issues, IO protection etc.

    Hope this helps.



  • I have yet to find a reasonable solution when it comes to DR for a distributor. Unfortunately there are many exe's outside of SQLServer.exe, ie each repl agent has its own exe. Just open task manager on distrib and you will see.

    The best we do is clustering, however disk is still a single point of failure. And we have our distrib on a separate san than pub, which is same san as our pub's mirror. If we lose distrib we are looking at a full reinit, and we have a very distributed environement, so all pointers go to pub. We log ship remotely, if we have to go to dr site, full reinit, that's just the way it is.

    Microsoft recommends san to san repl, but is very expensive, or maybe there is a 3rd party product out there that can replicate complete images.

    Good luck & regards,



  • I thought one of Paul Randal's SQL Q&As for TechNet magazine back in the day had something on what technologies could be mixed with the different databases used in replication. I want to say for the distributor only clustering was supported because you could not repoint the publication/subscriber databases to another instance in a consistent way.

    Sadly I cannot find a link to this though...

    Joie Andrew
    "Since 1982"

Viewing 7 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic. Login to reply