Vinod Kumar Technology Evangelist | Microsoft
Agenda Definitions Disaster Recovery Planning Database Snapshots Log shipping Database Mirroring What to do when system databases crash Rebuilding System Databases
Definitions For clarity, we’ll use the following definitions today: Disaster: an event that results in serious loss of data or service Disaster Recovery: A process that allows continuation of business following a disaster, including manual methods Offsite Disaster Recovery: A process that allows disaster recovery at a remote location (usually entire site) Business Continuity: A process that includes disaster recovery and offsite disaster recovery as well as using systems to avert disasters, such as fault- tolerant hardware and software
Definitions As per “Disaster recovery planning is the work that is devoted to preparing all the actions that must occur in response to a disaster. The planning includes the selection of a strategy to help recover valuable data. The selection of the appropriate disaster recovery strategy depends on your business requirements.”
Type of disasters Natural Disasters: Tsunami, Katrina, Rita, etc Fire Power outage/failure Organized disruptions Theft System failures Legal issues Wars Strikes Human error Viruses, etc.
Disaster Recovery Drivers Symantec Annual IT Survey Results Published in IT News 9/9/2008 – Symantec Annual IT Survey
Prepare a DRP document Include every possible information: System architecture (How the system/application works) How many systems are involved and what their names are. Their IP Addresses, drive information, file locations Software installed, Contact information of DBA’s, or other key people. Know your SLAs and choose appropriate technology.
Prepare a DRP document(cont.) Include every possible information… Step by step guide on how to recover each of your system based on different disaster scenarios (Including timelines for recovery) Make sure you discuss DRP guide with all the parties involved. Security information, jobs/schedule information, etc. Make it a reminder for yourself that any system changes should be updated in this guide. Test, test and test!!!
Database Snapshots Read-only, consistent view of a database Specified point-in-time Modifying data Copy-on-write of affected pages Reading data Accesses snapshot if data has changed Redirected to original database otherwise 12:00 Snapshot Page
Database snapshot 1. Recovering modified data 2. Recovering dropped object 3. Restoring from Snapshot
Log Shipping An automated method of maintaining a warm standby server Based on SQL Server's backup and restore architecture. Uses the transaction log to track changes Relatively low-tech and inexpensive ‘Ships' (copies and restores) a production server's transaction logs to a standby server
Log Shipping (Key terms) Primary Server: Contains your primary database. SQL Server Agent makes periodic transaction log backups to capture changes. Secondary Server Contain an unrecovered copy of the production database. One standby server can contain standby databases from multiple primary servers.
Log Shipping (Key terms) cont… Monitor Server (Optional) Monitors the status of the log-shipping jobs on the primary and each standby server. One monitoring server can monitor multiple primary-standby server pairs. Should use a server other than the primary or the standby to detect problems on either server.
Log Shipping
Database Mirroring Newly introduced with SQL Server Maintains a copy of the principal database as a mirror. Transfers log records from principal to mirror server instance. Works with all hardware that supports SQL Server Automatic client redirection (using.NET 2.0) Can have a third optional server called Witness server for Auto Failover.
Database Mirroring -Synchronous Commit Write to local log Transmit to mirror Write to remote log Log Acknowledge Committed in log Constantly redoing on mirror Acknowledge DB DB Log
Database Mirroring Enhancements Enhancements in SQL 2008 Compression of stream data for which at least a 12.5 percent compression ratio can be achieved. Automatic Recovery from Corrupted Pages. Page read-ahead during the undo phase. Improved use of log send buffers.
Database Mirroring Automatic Failover Auto page repair (SQL 2008)
Rebuilding System Databases SQL 2000 Use RebuildM.exe (UI based) Need setup media for Database files SQL 2005 Use Setup.exe (Command Prompt based) Need setup media for setup.exe and database files. SQL 2008 Use Setup.exe (Command Prompt based) Setup media not required. Files copied during initial installation. Will not Rebuild Resource database.
Rebuilding System Databases Setup.exe file located under %Program Files%\Microsoft SQL Server\100\Setup Bootstrap\Release Database Files used by setup are located under %Program Files%\Microsoft SQL Server\MSSQL10. \MSS QL\Binn\Templates Files Missing? Copy from setup media Apply service packs/patches after rebuilding
System databases disaster Master database loss SQL Server won’t start Rebuild system databases Start SQL in single user mode and restore master Msdb database loss SQL Agent won’t start. Restore msdb Model database loss SQL Server won’t start. Rebuild system databases Restore master, msdb and model
Best Practices Backup your system databases after modifications. Test if backups are restorable. Practice / Test your disaster recovery plans. Documentation is not only for you. Keep dedicated DR Server ready. Use BACKUP CHECKSUM features. Run DBCC CHECKDB regularly. Don’t ignore any runtime errors.
Summary Murphy’s Law on Disaster… If there is a possibility of several things going wrong, the one that will cause the most damage will be the one to go wrong. If you fail to plan, you are planning to fail. Off-site backups always help. Auto page repair is a band-aid.
References SQL Server Books online Planning for SQL Disaster Recovery Database Mirroring Whitepaper mirror.mspx
© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.