Разрешение коррупции в файлах базы данных базы данных SQL Server Compact Edition

Это не запрос. Это краткое изложение нашего решения, чтобы обойти проблему коррупции в файлах базы данных SQL Compact с (почти) определенным успехом. Коррупция SQLCE - очень распространенная проблема. Мы получили огромную помощь с более ранних постов в StackoverFlow и, следовательно, этот пост.

Наш продукт - это 3-х уровневая архитектура с сервером, работающим в качестве службы Windows, подключенной к богатым клиентам через .NET Remoting. Наш продукт использует SQLCE с 2006 года. Мы перешли из V3.1, до V3.5 и теперь V4.0. У нас есть пользовательский или сопоставленный инструмент для некоторых очень конкретных требований. Мы столкнулись с ограниченными проблемами с V3.1, мы столкнулись больше с V3.5 и V4.0.

Первоначально с V3.5 мы реализовали SQLCEENGINE.Repair . Но оно бросает только поврежденные данные и пытается воссоздать стабильную БД. Мы обнаружили, что внешние ключевые ключи пострадавших таблиц пропали без вести. Мы должны были покончить с этим сразу. Мы начали уведомлять пользователей о коррупции БД и восстановить последнее резервное копирование. Это только обеспечило временное облегчение; Проблема коррупций все еще стояла.

В этом году мы приняли V4.0. Однако наше приложение также представило несколько новых функций, которые превосходно увеличиваются количество вызовов баз данных. V4.0 начал хорошо, но начал давать проблемы при увеличении использования программного обеспечения. Коррупции, происходящие, когда приложение работало, вызвано ни разбором Windows, ненормальные выключения или проблемы диска. База данных только что повреждена.

Следующий пост охватывает решение, которое мы разработали для этой проблемы:

21
задан R D 31 December 2011 в 09:35
поделиться