Search Preview
Corrupting Databases on Purpose Using the OrcaMDF Corruptor | Mark S. Rasmussen
improve.dkMark S. Rasmussen improve.dk About Me Pages
.dk > improve.dk
SEO audit: Content analysis
Language | Error! No language localisation is found. | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Title | Corrupting Databases on Purpose Using the OrcaMDF Corruptor | Mark S. Rasmussen | ||||||||||||||||||||||||||||||||||||
Text / HTML ratio | 41 % | ||||||||||||||||||||||||||||||||||||
Frame | Excellent! The website does not use iFrame solutions. | ||||||||||||||||||||||||||||||||||||
Flash | Excellent! The website does not have any flash contents. | ||||||||||||||||||||||||||||||||||||
Keywords cloud | page Server SQL pages corrupt OrcaMDF corruption Corruptor corruptedPageIDs Mark code Rasmussen Web file technical IDs zeros var RawDatabase data | ||||||||||||||||||||||||||||||||||||
Keywords consistency |
|
||||||||||||||||||||||||||||||||||||
Headings |
|
||||||||||||||||||||||||||||||||||||
Images | We found 0 images on this web page. |
SEO Keywords (Single)
Keyword | Occurrence | Density |
---|---|---|
page | 12 | 0.60 % |
Server | 11 | 0.55 % |
SQL | 11 | 0.55 % |
pages | 7 | 0.35 % |
corrupt | 5 | 0.25 % |
OrcaMDF | 5 | 0.25 % |
corruption | 4 | 0.20 % |
Corruptor | 4 | 0.20 % |
corruptedPageIDs | 4 | 0.20 % |
Mark | 3 | 0.15 % |
code | 3 | 0.15 % |
Rasmussen | 3 | 0.15 % |
Web | 2 | 0.10 % |
file | 2 | 0.10 % |
technical | 2 | 0.10 % |
IDs | 2 | 0.10 % |
zeros | 2 | 0.10 % |
var | 2 | 0.10 % |
RawDatabase | 2 | 0.10 % |
data | 2 | 0.10 % |
SEO Keywords (Two Word)
Keyword | Occurrence | Density |
---|---|---|
SQL Server | 11 | 0.55 % |
is the | 5 | 0.25 % |
of the | 4 | 0.20 % |
Mark S | 3 | 0.15 % |
S Rasmussen | 3 | 0.15 % |
the page | 3 | 0.15 % |
OrcaMDF SQL | 2 | 0.10 % |
the second | 2 | 0.10 % |
The following | 2 | 0.10 % |
following code | 2 | 0.10 % |
to corrupt | 2 | 0.10 % |
pages to | 2 | 0.10 % |
of pages | 2 | 0.10 % |
code will | 2 | 0.10 % |
number of | 2 | 0.10 % |
Server OrcaMDF | 2 | 0.10 % |
Internals SQL | 2 | 0.10 % |
Server Internals | 2 | 0.10 % |
will corrupt | 2 | 0.10 % |
specify the | 2 | 0.10 % |
SEO Keywords (Three Word)
Keyword | Occurrence | Density | Possible Spam |
---|---|---|---|
Mark S Rasmussen | 3 | 0.15 % | No |
SQL Server Internals | 2 | 0.10 % | No |
Internals SQL Server | 2 | 0.10 % | No |
corruptedPageIDs = CorruptorCorruptFileC\AdventureWorks2008R2LTmdf | 2 | 0.10 % | No |
var corruptedPageIDs = | 2 | 0.10 % | No |
SQL Server OrcaMDF | 2 | 0.10 % | No |
Server OrcaMDF SQL | 2 | 0.10 % | No |
OrcaMDF SQL Server | 2 | 0.10 % | No |
code will corrupt | 2 | 0.10 % | No |
following code will | 2 | 0.10 % | No |
pages to corrupt | 2 | 0.10 % | No |
of pages to | 2 | 0.10 % | No |
The following code | 2 | 0.10 % | No |
Server Internals SQL | 2 | 0.10 % | No |
boot page and | 1 | 0.05 % | No |
the boot page | 1 | 0.05 % | No |
page and finally | 1 | 0.05 % | No |
and finally page | 1 | 0.05 % | No |
finally page 16 | 1 | 0.05 % | No |
page 16 is | 1 | 0.05 % | No |
SEO Keywords (Four Word)
Keyword | Occurrence | Density | Possible Spam |
---|---|---|---|
SQL Server Internals SQL | 2 | 0.10 % | No |
following code will corrupt | 2 | 0.10 % | No |
var corruptedPageIDs = CorruptorCorruptFileC\AdventureWorks2008R2LTmdf | 2 | 0.10 % | No |
Server Internals SQL Server | 2 | 0.10 % | No |
SQL Server OrcaMDF SQL | 2 | 0.10 % | No |
Server OrcaMDF SQL Server | 2 | 0.10 % | No |
The following code will | 2 | 0.10 % | No |
of pages to corrupt | 2 | 0.10 % | No |
finally page 16 is | 1 | 0.05 % | No |
boot page and finally | 1 | 0.05 % | No |
page 16 is the | 1 | 0.05 % | No |
and finally page 16 | 1 | 0.05 % | No |
16 is the page | 1 | 0.05 % | No |
is the page that | 1 | 0.05 % | No |
page and finally page | 1 | 0.05 % | No |
the page that contains | 1 | 0.05 % | No |
page that contains the | 1 | 0.05 % | No |
Mark S Rasmussen improvedk | 1 | 0.05 % | No |
is the boot page | 1 | 0.05 % | No |
the boot page and | 1 | 0.05 % | No |
Internal links in - improve.dk
About Me | Mark S. Rasmussen
Misc | Mark S. Rasmussen
Miscellaneous | Mark S. Rasmussen
Migrating from Wordpress to Hexo | Mark S. Rasmussen
SQL Server Mirroring - A Practical Approach | Mark S. Rasmussen
SQL Server Corruption Recovery - When All Else Fails | Mark S. Rasmussen
Corrupting Databases on Purpose Using the OrcaMDF Corruptor | Mark S. Rasmussen
OrcaMDF RawDatabase - A Swiss Army Knife for MDF Files | Mark S. Rasmussen
Introducing OrcaMDF | Mark S. Rasmussen
OrcaMDF Now Exposes Metadata Through System DMVs | Mark S. Rasmussen
OrcaMDF Studio Release + Feature Recap | Mark S. Rasmussen
Keeping Track of Time While Presenting | Mark S. Rasmussen
Mark S. Rasmussen
AS/Flex/Flash | Mark S. Rasmussen
IIS | Mark S. Rasmussen
Life | Mark S. Rasmussen
Performance | Mark S. Rasmussen
Testing | Mark S. Rasmussen
Umbraco | Mark S. Rasmussen
Web | Mark S. Rasmussen
Windbg | Mark S. Rasmussen
Windows | Mark S. Rasmussen
2009 | Mark S. Rasmussen
2008 | Mark S. Rasmussen
2007 | Mark S. Rasmussen
2006 | Mark S. Rasmussen
Improve.dk Spined HTML
Corrupting Databases on Purpose Using the OrcaMDF Corruptor | Mark S. Rasmussen Mark S. Rasmussen improve.dk About Me Pages Categories Archive Nov 05 2013 Corrupting Databases on Purpose Using the OrcaMDF Corruptor .NET , SQL Server - Internals , SQL Server - OrcaMDF , SQL Server Comments Sometimes you must first do evil, to do good. Such is the specimen when you want to strop your skills in self-indulgence recovery of SQL Server databases. To requite me increasingly material to test the new RawDatabase functionality, I’ve now widow a Corruptor matriculation to OrcaMDF. Corruptor does increasingly or less what the name says - it corrupts database files on purpose. The self-indulgence itself is quite simple. Corruptor will segregate a number of random pages and simply overwrite the page completely with all zeros. Depending on what pages are hit, this can be quite fatal. I shouldn’t have to say this, but just in case… Please do not use this on anything valuable. It will fatally untruthful your data. Examples There are two overloads for the Corruptor.CorruptFile method, both of them return an IEnumerable of integers - a list of the page IDs that have been overwritten by zeros. The pursuit lawmaking will untruthful 5% of the pages in the AdventureWorks2008R2LT.mdf file, without which it will output each page ID that has been corrupted. You can specify the percentage of pages to untruthful by waffly the second parameter. var corruptedPageIDs = Corruptor.CorruptFile(@"C:\AdventureWorks2008R2LT.mdf", 0.05); Console.WriteLine(string.Join(", ", corruptedPageIDs)); 606, 516, 603, 521, 613, 621, 118, 47, 173, 579, 323, 217, 358, 515, 615, 271, 176, 596, 417, 379, 269, 409, 558, 103, 8, 636, 200, 361, 60, 486, 366, 99, 87 To make the self-indulgence hit plane harder, you can moreover use the second overload of the CorruptFile method, permitting you to specify the word-for-word number of pages to corrupt, within a unrepealable range of page IDs. The pursuit lawmaking will untruthful exactly 10 pages within the first 50 pages (zero-based), thus hitting mostly metadata. var corruptedPageIDs = Corruptor.CorruptFile(@"C:\AdventureWorks2008R2LT.mdf", 10, 0, 49); Console.WriteLine(string.Join(", ", corruptedPageIDs)); 16, 4, 0, 32, 15, 14, 30, 2, 49, 9 In the whilom specimen I was extraordinarily unlucky seeing as page 0 is the file header page, page 2 is the first GAM page, page 9 is the marching page and finally page 16 is the page that contains the typecasting unit metadata. With self-indulgence like this, you can be unrepealable that DBCC CHECKDB will be giving up, leaving you with no other volitional than to restore from a backup. Or… You could try to recover as much data as possible using OrcaMDF RawDatabase, but I’ll get when to that later :) Mark S. Rasmussen I'm the CTO at iPaper where I petting with databases, mold lawmaking and maintain the overall technical & team responsibility. I'm an voracious speaker at user groups & conferences. I love life, motorcycles, photography and all things technical. Say hi on Twitter, write me an email or squint me up on LinkedIn. CATEGORIES .NETAS/Flex/FlashAmazon Web ServicesComputer ScienceConferences and PresentingIISLifeMiscMiscellaneousPerformancePokerSQL ServerSQL Server - CommunitySQL Server - Data TypesSQL Server - InternalsSQL Server - OptimizationSQL Server - OrcaMDFSQL Server - TricksTestingTools of the TradeUmbracoVisual StudioWebWindbgWindows ARCHIVE 201420132012201120102009200820072006 Copyright © 2014 Mark S. Rasmussen