Snapshot of MSDB

  • Comments posted to this topic are about the item Snapshot of MSDB

  • Good question.

    I am able to understand why snapshot cannot be created on TEMPDB. But don't understand why it has been prohibited for Master and Model (Though it's not necessary to create snapshots on system DBs).

  • The Microsoft 70-431 self-training book says "You cannot create Database Snapshots against system databases." Was this changed in a service pack, or was the author being lazy?

  • Yes, the MCTS 70-431 on p605 does say "You cannot create Database Snapshots against system databases." The MSKB at http://support.microsoft.com/kb/920926 does not have any errata for this page to indicate otherwise. Has anybody tried this on SQL 2005 Enterprise? What was the result?

  • dun (8/27/2009)


    Yes, the MCTS 70-431 on p605 does say "You cannot create Database Snapshots against system databases." The MSKB at http://support.microsoft.com/kb/920926 does not have any errata for this page to indicate otherwise. Has anybody tried this on SQL 2005 Enterprise? What was the result?

    Okay, I tried the following and it was successful.

    create database msdb_dbss20090827 on

    (name = MSDBData, filename = 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\msdbdata.ss')

    as snapshot of msdb;

  • Also, this msdn article explicitly states model,master and tempdb as being prohibited - thus leaving the door open for msdb snapshots.

    Jason...AKA CirqueDeSQLeil
    _______________________________________________
    I have given a name to my pain...MCM SQL Server, MVP
    SQL RNNR
    Posting Performance Based Questions - Gail Shaw[/url]
    Learn Extended Events

  • As does BOL (Books Online).

  • Thanks for the test.

  • Joy Smith San (8/26/2009)


    Good question.

    I am able to understand why snapshot cannot be created on TEMPDB. But don't understand why it has been prohibited for Master and Model (Though it's not necessary to create snapshots on system DBs).

    It may not be necessary, but it can be useful - especially for MSDB. MSDB will grow like topsy unless job and jobstep history is pruned, but you want to avoid having oldest data disappear while you are generating reports about the history of jobs and steps (time taken, failures, scheduled runs missed,...) so that everything's viewed from the same base. So take a snapshot of MSDB and do the reporting against that - the real MSDB can happily be pruned while the report task is running. Throw the snapshot away when the report is done.

    I'd always want to have a well documented history of model, what changed when and why it changed, and it should change so rarely that there is no point in taking a snapshot (snapshots are NOT backups, they are temporary static images you can play with). Probably sensible to ban taking snapshots as otherwise people might be tempted to misuse them. Probably the same applies to Master, although it changes more often.

    Tom

Viewing 9 posts - 1 through 8 (of 8 total)

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