දූෂිතයෙකු නැවත ලබා ගන්න SQL Server MDF දත්ත සමුදාය

විට ඔබ SQL Server MDF දත්ත සමුදාය දූෂිතයි, පාඩුව අවම කර ගැනීම සඳහා ඔබට එහි ඇති දත්ත නැවත ලබා ගැනීමට පහත ක්‍රම භාවිතා කළ හැකිය:

සටහන: දත්ත ප්‍රතිසාධන මෙහෙයුම් සිදු කිරීමට පෙර, කරුණාකර ඔබේ දූෂිත එම්ඩීඑෆ් සහ එන්ඩීඑෆ් දත්ත සමුදා ගොනු පළමුව උපස්ථ කරන්න.

  1. පළමුව, ඔබට උත්සාහ කළ හැකිය SQL Server සාදන ලද විධානය ඩීබීසීසී පරීක්‍ෂණය ඔබේ දත්ත සමුදාය නැවත ලබා ගැනීමට. දූෂිත දත්ත සමුදා ගොනුව 'MyDatabase.mdf' යැයි උපකල්පනය කළහොත්, එහි ඇති දත්ත නැවත ලබා ගැනීම සඳහා ඔබට පහත පරිදි කළ හැකිය:
    1. ඇත්තtart SQL Server.
    2. කිසිදු මෙහෙයුමක් නොකරන්න.
    3. In SQL Server කළමනාකරණ චිත්‍රාගාරය, පහත දැක්වෙන SQL ප්‍රකාශ ක්‍රියාත්මක කරන්න:
      මාස්ටර් ප්‍රකාශය භාවිතා කරන්න atatatabasename varchar (255) set @ databaseasename = 'MyDatabase.mdf' exec sp_dboption @databasename, N'single ', N'true' - ගමනාන්ත දත්ත සමුදාය තනි පරිශීලක මාදිලියකට සකසන්න dbcc checkdb (@ databaseasename, REPAIR_ALLOW_DATA_LATS_L) .
      

      ප්රකාශය

      dbcc checkdb (@ දත්ත සමුදාය, REPAIR_ALLOW_DATA_LOSS)
      

      අළුත්වැඩියා කිරීමේ ක්‍රියාවලිය සිදු කරන විට ඔබේ දත්ත ගබඩාවේ සමහර දත්ත නැතිවීමට හේතු විය හැක.

      ප්රකාශය අතරතුර

      dbcc checkdb (@ databaseasename, REPAIR_REBUILD)
      

      අළුත්වැඩියා කිරීමේ ක්‍රියාවලියේදී කිසිදු දත්ත අලාභයක් සිදු නොවනු ඇත, නමුත් එය වැඩි කාලයක් ගත වේ.

      එබැවින් ඔබ හදිසි නොවන්නේ නම්, ඔබට පළමුව දෙවන dbcc checkdb ප්‍රකාශය සිදු කිරීමට උත්සාහ කළ හැකිය, එම ප්‍රකාශය දත්ත සමුදාය නැවත ලබා ගැනීමට උදව් කළ නොහැකි නම්, ඔබට පළමු හා දෙවන dbcc checkdb විධානයන් සිදු කළ හැකිය.

      අළුත්වැඩියා කිරීමේ මෙහෙයුමෙන් පසුව, ඔබට ඇමතිය හැකිය

      dbcc checkdb ('MyDatabase.mdf')
      

      දත්ත සමුදාය සවි කර තිබේද නැද්ද යන්න නැවත බැලීමට.

      Dbcc checkdb විධානය පිළිබඳ වැඩි විස්තර දැනගත හැකිය https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-checkdb-transact-sql?view=sql-server-ver15

  2. 1 වන ක්‍රමය භාවිතා කිරීමෙන් පසුව, dbcc checkdb තවමත් සමහර වගු වල දෝෂ වාර්තා කරයි නම්, ඔබට උත්සාහ කළ හැකිය SQL Server ඔබේ දත්ත ගබඩාවේ මෙම වගු නැවත ලබා ගැනීම සඳහා ගොඩනංවන ලද විධානය DBCC පරීක්ෂා කරන්න. දූෂිත දත්ත සමුදා ගොනුව 'MyDatabase.mdf' යැයි උපකල්පනය කර ඔබට අලුත්වැඩියා කිරීමට අවශ්‍ය වගුව 'MyTable' නම්, එය අලුත්වැඩියා කිරීමට ඔබට පහත පරිදි කළ හැකිය:
    1. ඇත්තtart SQL Server.
    2. කිසිදු මෙහෙයුමක් නොකරන්න.
    3. In SQL Server කළමනාකරණ චිත්‍රාගාරය, පහත දැක්වෙන SQL ප්‍රකාශ ක්‍රියාත්මක කරන්න:
      MyDatabase.mdf ප්‍රකාශ කරන්න @dbname varchar (255) set @ dbname = 'MyDatabase.mdf' exec sp_dboption @ dbname, 'තනි පරිශීලකයා', 'true' dbcc checktable ('MyTable', REPAIR_ALLOW_DATA_LOSS) dbCC පිරික්සුම් කළ හැකි ) exec sp_dboption @ dbname, 'තනි පරිශීලක', 'අසත්ය'
      

      ප්රකාශය

      dbcc පිරික්සුම් ටේබල් ('MyTable', REPAIR_ALLOW_DATA_LOSS)
      

      අළුත්වැඩියා කිරීමේ ක්‍රියාවලිය සිදු කරන විට ඔබගේ වගුවේ ඇති සමහර දත්ත නැතිවීමට හේතු විය හැක.

      ප්රකාශය අතරතුර

      dbcc පිරික්සුම් වගුව ('MyTable', REPAIR_REBUILD)
      

      අළුත්වැඩියා කිරීමේ ක්‍රියාවලියේදී කිසිදු දත්ත අලාභයක් සිදු නොවනු ඇත, නමුත් එය වැඩි කාලයක් ගත වේ.

      එබැවින් ඔබ හදිසියේ නොසිටින්නේ නම්, ඔබට පළමුව දෙවන ඩීබීසීසී පරීක්‍ෂා කළ හැකි ප්‍රකාශය සිදු කිරීමට උත්සාහ කළ හැකිය, එම ප්‍රකාශය දත්ත සමුදාය නැවත ලබා ගැනීමට උදව් කළ නොහැකි නම්, ඔබට පළමු හා දෙවන ඩීබීසීසී පරීක්‍ෂා කළ හැකි විධානයන් කළ හැකිය.

      සියලුම දූෂිත වගු සඳහා අළුත්වැඩියා කිරීමේ ක්‍රියාවලිය සම්පූර්ණ කිරීමෙන් පසුව, ඔබට ඇමතිය හැකිය

      dbcc checkdb ('MyDatabase.mdf')
      

      දත්ත සමුදායේ වගු සවි කර තිබේද නැද්ද යන්න නැවත බැලීමට.

    Dbcc checktable විධානය පිළිබඳ වැඩි විස්තර මෙහි සොයාගත හැකිය https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-checktable-transact-sql?view=sql-server-ver15

  3. 1 සහ 2 ක්‍රමයට තවමත් දූෂිත දත්ත සමුදාය හෝ වගු නිවැරදි කළ නොහැකි නම් හෝ මෙම ක්‍රම මඟින් ඔබට අවශ්‍ය දත්ත ලබා ගත නොහැකි නම් ඔබට භාවිතා කළ හැකිය DataNumen SQL Recovery ඔබේ MDF දත්ත ගබඩාවෙන් දත්ත ලබා ගැනීමට.