SQL Server: Detecting and Correcting Database Corruption
Database corruption happens all the time, all over the world. Learn how to easily and automatically detect corruption, and then how to recover from corruption with the minimum of downtime and data loss using restore or repair, applicable to anyone who is responsible for SQL Server databases, from SQL Server 2005 onward
What you'll learn
Database corruption happens all the time, all over the world. When it happens in your environment, do you know what to do? Will you realize you have corruption? Written and presented by the person who wrote SQL Server's consistency checking and repair tools, this course will show you what you need to know to detect and recover from most cases of database corruption. The course starts by explaining why timely corruption detection is so important, and then investigates the various causes of database corruption. You'll learn how to configure SQL Server to automatically detect when I/O errors occur, what consistency checks are, the DBCC commands to use to perform consistency checks, and how to configure SQL Server to perform consistency checks regularly. The course then moves on to interpreting the output from consistency checks so you'll know when you have corruption in your environment, plus whether and how the corruption limits your recovery options or not. Finally, the course ends with modules that describe and demonstrate how to recover from corruption using simple restore techniques and simple repair techniques. Packed with a wealth of information and practical, easy-to-follow demonstrations, this course will prepare you to detect and recover from database corruption when it happens to you. The course is applicable for all SQL Server versions from SQL Server 2005 onward, and for anyone responsible for SQL Server databases with any level of experience.
Table of contents
- Introduction 1m
- Page Protection Options 1m
- Torn-Page Detection (1) 2m
- Torn-Page Detection (2) 1m
- Page Checksums (1) 3m
- Page Checksums (2) 2m
- Demo: Checking and Setting Page Protection 3m
- I/O Errors 2m
- I/O Error Example 1m
- Demo: I/O Error 4m
- Read-Retry and Error 825 2m
- Automatic Page Repair 2m
- Memory Corruption 1m
- Monitoring for I/O Errors 2m
- Summary 1m
- Introduction 1m
- Consistency Checks 1m
- Which Databases Should Be Checked? 1m
- How to Run Consistency Checks? 1m
- Demo: SQL Agent Job to Run Consistency Checks 2m
- Demo: Viewing SQL Agent Job History 2m
- How Often Should Consistency Checks Be Run? 3m
- Can You Ever Get a Guarantee? 2m
- How to Consistency Check a VLDB? 1m
- Consistency Checks Using Another Server (1) 1m
- Consistency Checks Using Another Server (2) 1m
- Backup Checksums 1m
- Demo: Backup Checksums 7m
- Backups Checksums vs. Consistency Checks 1m
- Consistency Checking Survey (1) 2m
- Consistency Checking Survey (2) 1m
- Summary 1m
- Introduction 1m
- DBCC CHECKDB (1) 2m
- DBCC CHECKDB (2) 3m
- Other DBCC CHECK* Commands (1) 2m
- Other DBCC CHECK* Commands (2) 1m
- Other DBCC CHECK* Commands (3) 1m
- What Exactly Does DBCC CHECKDB Do? (1) 2m
- What Exactly Does DBCC CHECKDB Do? (2) 1m
- Does DBCC CHECKDB Run During Startup? 2m
- Demo: Viewing Last-Known-Good Time 2m
- DBCC CHECK* Options (1) 1m
- DBCC CHECK* Options (2) 2m
- Demo: DBCC CHECK* Options 5m
- How Are DBCC CHECK* Commands Online? 2m
- How Long Will DBCC CHECKDB Take To Run? 2m
- Potential Problems With DBCC CHECKDB (1) 2m
- Potential Problems With DBCC CHECKDB (2) 2m
- Breaking Up Consistency Checks Over Time 2m
- Summary 1m
- Introduction 1m
- First Signs of Corruption... 1m
- Running DBCC CHECKDB 2m
- Where Does DBCC CHECKDB Output Go? 1m
- Demo: Example DBCC CHECKDB Output 5m
- Interpreting DBCC CHECKDB Output (1) 1m
- Interpreting DBCC CHECKDB Output (2) 2m
- Demo: Fatal Error Examples 4m
- Interpreting DBCC CHECKDB Output (3) 2m
- Interpreting DBCC CHECKDB Output (4) 2m
- Demo: Various Corruption Examples 6m
- Restore vs. Repair (1) 2m
- Restore vs. Repair (2) 1m
- Exporting Data to a New Database 1m
- Summary 1m
- Introduction 1m
- Recovering Using Backups 1m
- Backup Types (1) 1m
- Backup Types (2) 2m
- Backup Validation Survey 1m
- How to Restore? 1m
- Continuity of The Log Backup Chain 2m
- Restore Options 2m
- Restoring an Entire Database to a Point-in-Time 1m
- Demo: Restore Options and Point-in-Time Restore 6m
- Tail-of-the-Log Backups 2m
- Demo: Tail-of-the-Log Backups 3m
- Recovering With Full, Differential, and Log Backups 1m
- Falling Back on Log Backups 1m
- Determining The Restore Sequence 1m
- Demo: Determining The Restore Sequence 10m
- Restoring to Non-Enterprise Edition 2m
- Summary 1m
- Introduction 1m
- How Does Repair Work? 2m
- Running Repair 1m
- Repair Options 1m
- Beware of REPAIR_ALLOW_DATA_LOSS 1m
- Examples of Repairs 1m
- Misconceptions Around Repair 3m
- Demo: Running Repair 7m
- Manually Fixing Nonclustered Indexes 1m
- Demo: Manually Fixing Nonclustered Indexes 5m
- Manually Fixing Data Purity Errors 1m
- Demo: Manually Fixing Data Purity Errors 5m
- If You Are Forced to Use Repair... 1m
- Course Summary 1m