How to Restore only Corrupted pages from a database backup ? VIDEO

Leave a comment (0) Go to comments

How to Shorten the recovery time in case of database corruption?

PAGE Level database restore is new feature which was introduced in SQL Server 2008 onwards.

This is a new feature in SQL Server 2008, where we can restore only some corrupted pages from a good database backup.

For example you have a 100 Gb database and only 1 page is corrupted than we can save recovery time by restoring a single page instead of a 100 GB database.

VIDEO – How to Shorten the recovery time using PAGE Level Restore in database recovery.

In case, you are unable to watch this video, here are quick Steps with Screen Shot

STEP 1 - Check Database For corruption

We can check database integrity by using DBCC CHECKDB command, to see weather there is corruption in database of not.

How to Restore only Corrupted pages from a database backup ? VIDEO sql server page level restore how to restore database page


Looking at error message, we can clearly identify that there is corruption on page 223 as we can see this message. Object ID 2105058535, index ID 2, partition ID 72057594038910976, alloc unit ID 72057594039828480 (type In-row data): Page (1:223) could not be processed. 

STEP 2 – Restore faulty page from a GOOD Backup – PAGE Level Database Restore

Now we need to restore faulty pages from a SQL Server backup, that means restore only faulty pages. This is a new feature in SQL Server 2008, where we can restore only some corrupted pages from a good database backup.

For example you have a 100 Gb database and only 1 page is corrupted than we can save recovery time by restoring a single page instead of a 100 GB database.

SQL Command to perform a page level restore

use master
go
RESTORE DATABASE DBA PAGE = '1:223' FROM DISK = 'C:\temp\DBA_before_curruption.bak';
go

STEP 3 – Backup and Restore Current TRANSACTION LOG Backup

If you read the restore informational messages, which we received in last step states that there is difference between the LSN number.

Processed 1 pages for database ‘DBA’, file ‘DBA’ on file 1.

The roll forward start point is now at log sequence number (LSN) 43000000055600001. Additional roll forward past LSN 43000000058400001 is required to complete the restore sequence.

RESTORE DATABASE … FILE=<name> successfully processed 1 pages in 0.098 seconds (0.079 MB/sec).

To correct this LSN number, we need to backup the current log and restore in a current database, using the following syntax.

use DBA
BACKUP LOG DBA TO DISK = 'C:\DBA_log.bak' WITH INIT;
GO

use master
GO
RESTORE LOG DBA FROM DISK = 'C:\DBA_log.bak';

This is going to be pretty quick as only page level transactions will be rolled back or rolled forward, you can see that in message where backup log size was in MB’s but restore was kind of ZERO only.

Processed 5 pages for database ‘DBA’, file ‘DBA_log’ on file 1.

BACKUP LOG successfully processed 5 pages in 0.020 seconds (1.684 MB/sec).

Processed 0 pages for database ‘DBA’, file ‘DBA’ on file 1.

RESTORE LOG successfully processed 0 pages in 0.006 seconds (0.000 MB/sec).

 

STEP 4 – Verify corruption has been resolved and data is consistent

Re-execute DBCC CHECKDB to ensure and verify that corruption has been removed and database is health now.

TAGS : access database corruption, client level logo page, database corruption, database corruption causes, database page restore, entourage database corruption, esent database corruption, exchange database corruption, page level, recover corrupted database, recover corrupted database, restore corrupted page, restore database page, restore database page in case of database corruption, sql database corruption, sql server page restore

EOF - How to Restore only Corrupted pages from a database backup ? VIDEO, SQL Server 2012 , 2008 R2 , 2008 , 2005 , 2000

Leave a Reply

Your email address will not be published. Required fields are marked *


*


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Notify me of followup comments via e-mail. You can also subscribe without commenting.