Database Research & Development

  • Home
  • NoSQL
    • NoSQL
    • Cassandra
  • Databases
    • Database Theory
    • Database Designing
    • SQL Server Coding Standards
    • SQL Server
    • PostgreSQL
    • MySQL
    • Greenplum
    • Linux
  • Interviews
    • SQL Server Interviews
    • MySQL Interviews
    • SQL Puzzles
  • DBA Scripts
    • SQL Server DBA Scripts
    • PostgreSQL DBA Scripts
    • MySQL DBA Scripts
    • Greenplum DBA Scripts
  • Home
  • Blog Archives !
  • (: Laugh@dbrnd :)
  • Contact Me !
sqlserverinterviews
Home 2017 February SQL Server: Enable CHECKSUM Page Verification to detect a prime spot of Data Corruption

SQL Server: Enable CHECKSUM Page Verification to detect a prime spot of Data Corruption

This article is half-done without your Comment! *** Please share your thoughts via Comment ***

From the MSDN,

“When CHECKSUM is enabled for the PAGE_VERIFY database option, the SQL Server Database Engine calculates a checksum over the contents of the whole page, and stores the value in the page header when a page is written to disk.

When the page read from disk, the checksum is recomputed and compared to the checksum value that stored in the page header. This helps provide a high level of data file integrity.“

Guys, You have two options, wait for huge data corruption and detect it a very first level of data corruption.

Once you enable CHECKSUM, every read off and write off a check for CHECKSUM and validates it. If it finds any mismatch or broken chain of CHECKSUM value, it indicates data corruption immediately.

SQL Server Checksum

CHECKSUM option doesn’t prevent the data corruption, it gives you more confidence against data corruption, and you can detect data corruption error faster and solve it in the better way.

It occupies little CPU I/O for maintaining a CHECKSUM values, but it is acceptable.

Find all databases which are not configured for CHECKSUM verification:

1
2
3
4
5
6
7
8
USE master
GO
 
SELECT NAME
,page_verify_option_desc
FROM master .sys.databases
WHERE page_verify_option_desc != 'CHECKSUM'
GO

Enable CHECKSUM for your Database:

1
2
3
ALTER DATABASE Database_Name
SET PAGE_VERIFY CHECKSUM WITH NO_WAIT
GO

Important Note:
Once you enable and CHECKSUM for your database, It does not instantly add CHECKSUMs to your existing data pages in the database. You have to read each page using INSERT/UPDATE/DELETE or simply you can execute REBUILD option for your indexes.

Other related articles:

SQL Server: Monitor and Manage Database Corruption

Feb 7, 2017Anvesh Patel
PostgreSQL: How to take a backup of your Table?PostgreSQL: Script to copy Table Data from one Schema to another Schema
Anvesh Patel
Anvesh Patel

Database Engineer

February 7, 2017 SQL ServerAnvesh Patel, CHECKSUM, data corruption, data validation, database, database research and development, dbrnd, file integrity, Rebuild Index, SQL Query, SQL Server, SQL Server Administrator, SQL Server Error, SQL Server Monitoring, SQL Server Performance Tuning, SQL Server Programming, SQL Server Tips and Tricks, TSQL
About Me!

I'm Anvesh Patel, a Database Engineer certified by Oracle and IBM. I'm working as a Database Architect, Database Optimizer, Database Administrator, Database Developer. Providing the best articles and solutions for different problems in the best manner through my blogs is my passion. I have more than six years of experience with various RDBMS products like MSSQL Server, PostgreSQL, MySQL, Greenplum and currently learning and doing research on BIGData and NoSQL technology. -- Hyderabad, India.

About DBRND !

dbrnd

This is a personal blog (www.dbrnd.com).

Any views or opinions represented in this blog are personal and belong solely to the blog owner and do not represent those of people, institutions or organizations that the owner may or may not be associated with in professional or personal capacity, unless explicitly stated.

Feel free to challenge me, disagree with me, or tell me I’m completely nuts in the comments section of each blog entry, but I reserve the right to delete any comment for any reason whatsoever (abusive, profane, rude, or anonymous comments) - so keep it polite.

The content of this website is protected by copyright. No portion of this website may be copied or replicated in any form without the written consent of the website owner.

Recent Comments !
  • Anvesh Patel { Sure will do... } – May 27, 12:43 PM
  • Anvesh Patel { Great... } – May 27, 12:41 PM
  • Anvesh Patel { Great... } – May 27, 12:39 PM
  • Anvesh Patel { Great... } – May 27, 12:36 PM
  • Anvesh Patel { Great... } – May 27, 12:28 PM
  • Anvesh Patel { Great... } – May 27, 12:27 PM
  • Anvesh Patel { Great... } – May 27, 12:16 PM
  • Older »
Follow Me !
  • facebook
  • linkedin
  • twitter
  • youtube
  • google
  • flickr
© 2015 – 2019 All rights reserved. Database Research & Development (dbrnd.com)
Posting....