ഒരു അഴിമതിക്കാരനെ വീണ്ടെടുക്കുക SQL Server MDF ഡാറ്റാബേസ്

നിങ്ങൾ എപ്പോഴാണ് SQL Server MDF ഡാറ്റാബേസ് കേടായതാണ്, നഷ്ടം കുറയ്ക്കുന്നതിന്, അതിലെ ഡാറ്റ വീണ്ടെടുക്കാൻ നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന രീതികൾ ഉപയോഗിക്കാം:

ശ്രദ്ധിക്കുക: ഏതെങ്കിലും ഡാറ്റ വീണ്ടെടുക്കൽ പ്രവർത്തനങ്ങൾ നടത്തുന്നതിന് മുമ്പ്, നിങ്ങളുടെ കേടായ MDF, NDF ഡാറ്റാബേസ് ഫയലുകൾ ആദ്യം ബാക്കപ്പ് ചെയ്യുക.

  1. ഒന്നാമതായി, നിങ്ങൾക്ക് ശ്രമിക്കാം SQL Server അന്തർനിർമ്മിത കമാൻഡ് DBCC പരിശോധിക്കുക നിങ്ങളുടെ ഡാറ്റാബേസ് വീണ്ടെടുക്കാൻ. കേടായ ഡാറ്റാബേസ് ഫയൽ 'MyDatabase.mdf' ആണെന്ന് കരുതുക, അതിനുള്ളിലെ ഡാറ്റ വീണ്ടെടുക്കാൻ നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന രീതിയിൽ ചെയ്യാം:
    1. താമസിക്കുകtart SQL Server.
    2. പ്രവർത്തനങ്ങളൊന്നും ചെയ്യരുത്.
    3. In SQL Server മാനേജ്മെന്റ് സ്റ്റുഡിയോ, ഇനിപ്പറയുന്ന SQL പ്രസ്താവനകൾ നടപ്പിലാക്കുക:
      മാസ്റ്റർ ഡിക്ലേർ @databasename varchar(255) സെറ്റ് @databasename='MyDatabase.mdf' exec sp_dboption @databasename, N'single', N'true' ഉപയോഗിക്കുക -- ലക്ഷ്യ ഡാറ്റാബേസ് സിംഗിൾ-യൂസർ മോഡിലേക്ക് സജ്ജമാക്കുക dbcc checkdb_LOSS,@WDAPASEname ) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N'single', N'false' -- ഡെസ്റ്റിനേഷൻ ഡാറ്റാബേസ് വീണ്ടും മൾട്ടി-യൂസർ മോഡിലേക്ക് സജ്ജമാക്കുക
      

      പ്രസ്താവന

      dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
      

      അറ്റകുറ്റപ്പണി നടത്തുമ്പോൾ നിങ്ങളുടെ ഡാറ്റാബേസിലെ ചില ഡാറ്റ നഷ്‌ടപ്പെടാനിടയുണ്ട്.

      പ്രസ്താവന സമയത്ത്

      dbcc checkdb(@databasename,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 declare @dbname varchar(255) set @dbname='MyDatabase.mdf' exec sp_dboption @dbname,'single user','true' dbcc ചെക്ക്‌ടേബിൾ('MyTable',REPAIR_ALLOWILW_T_REPAIR_ALLOWILW_T) ഡി ) exec sp_dboption @dbname,'ഏക ഉപയോക്താവ്','false'
      

      പ്രസ്താവന

      dbcc ചെക്ക്‌ടേബിൾ('MyTable',REPAIR_ALLOW_DATA_LOSS)
      

      അറ്റകുറ്റപ്പണി നടത്തുമ്പോൾ നിങ്ങളുടെ ടേബിളിലെ ചില ഡാറ്റ നഷ്‌ടപ്പെടാനിടയുണ്ട്.

      പ്രസ്താവന സമയത്ത്

      dbcc ചെക്ക്‌ടേബിൾ('MyTable',REPAIR_REBUILD)
      

      റിപ്പയർ ഓപ്പറേഷൻ സമയത്ത് ഡാറ്റ നഷ്‌ടത്തിന് കാരണമാകില്ല, പക്ഷേ ഇത് കൂടുതൽ സമയമെടുക്കുന്നതാണ്.

      അതിനാൽ നിങ്ങൾ അടിയന്തിരമല്ലെങ്കിൽ, നിങ്ങൾക്ക് ആദ്യം രണ്ടാമത്തെ dbcc ചെക്ക്‌ടേബിൾ സ്റ്റേറ്റ്‌മെന്റ് നടപ്പിലാക്കാൻ ശ്രമിക്കാം, ആ പ്രസ്താവന ഡാറ്റാബേസ് വീണ്ടെടുക്കാൻ സഹായിക്കുന്നില്ലെങ്കിൽ, നിങ്ങൾക്ക് ഒന്നും രണ്ടും dbcc ചെക്ക്‌ടേബിൾ കമാൻഡുകൾ നടപ്പിലാക്കാം.

      കേടായ എല്ലാ ടേബിളുകളുടെയും അറ്റകുറ്റപ്പണികൾ പൂർത്തിയാക്കിയ ശേഷം, നിങ്ങൾക്ക് വിളിക്കാം

      dbcc checkdb('MyDatabase.mdf')
      

      ഡാറ്റാബേസിലെ ടേബിളുകൾ ഉറപ്പിച്ചിട്ടുണ്ടോ ഇല്ലയോ എന്ന് കാണാൻ വീണ്ടും.

    dbcc ചെക്ക്‌ടേബിൾ കമാൻഡിനെക്കുറിച്ചുള്ള കൂടുതൽ വിശദമായ വിവരങ്ങൾ ഇവിടെ കാണാം 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 ഡാറ്റാബേസിൽ നിന്ന് ഡാറ്റ വീണ്ടെടുക്കാൻ.