Mbalekake Korupsi SQL Server MDF Database

Nalika SQL Server Basis data MDF rusak, sampeyan bisa nggunakake cara ing ngisor iki kanggo mbalekake data kasebut, kanggo nyuda kerugian:

Cathetan: Sadurunge nindakake operasi pemulihan data, serep file database MDF & NDF sing rusak dhisik.

  1. Kaping pisanan, sampeyan bisa nyoba SQL Server printah dibangun ing DBCC CHECKDB kanggo mbalekake database sampeyan. Nganggep file database sing rusak yaiku 'MyDatabase.mdf', mula sampeyan bisa nindakake kaya ing ngisor iki kanggo mbalekake data ing njero:
    1. Restart SQL Server.
    2. Aja nindakake operasi apa wae.
    3. In SQL Server Management Studio, jalanake statement SQL ing ngisor iki:
      gunakake master declare @databasename varchar(255) set @databasename='MyDatabase.mdf' exec sp_dboption @databasename, N'single', N'true' -- Setel basis data tujuan menyang mode pangguna siji dbcc checkdb (@databasename,REPAIR_ALLOW_DATA_LOSS ) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N'single', N'false' -- Setel database tujuan bali menyang mode multi-user
      

      Pratelan kasebut

      dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
      

      bisa nyebabake ilang sawetara data ing basis data nalika nindakake operasi ndandani.

      Dene pratelan

      dbcc checkdb(@databasename,REPAIR_REBUILD)
      

      Ora bakal nyebabake mundhut data sajrone operasi ndandani, nanging luwih akeh wektu.

      Dadi yen sampeyan ora urgent, sampeyan bisa nyoba kanggo nindakake statement dbcc checkdb kapindho mung, yen statement ora bisa bantuan kanggo mbalekake database, sampeyan bisa nindakake printah dbcc checkdb pisanan lan kaloro.

      Sawise operasi ndandani, sampeyan bisa nelpon

      dbcc checkdb('MyDatabase.mdf')
      

      maneh kanggo ndeleng yen database wis tetep utawa ora.

      Informasi sing luwih rinci babagan dbcc checkdb printah bisa ditemokake ing https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-checkdb-transact-sql?view=sql-server-ver15

  2. Yen sawise nggunakake metode 1, dbcc checkdb isih nglaporake kesalahan ing sawetara tabel, sampeyan bisa nyoba SQL Server dibangun ing printah DBCC CHECKTABLE kanggo waras tabel iki ing database. Nganggep file database sing rusak yaiku 'MyDatabase.mdf' lan tabel sing pengin didandani yaiku 'MyTable', mula sampeyan bisa nindakake kaya ing ngisor iki kanggo ndandani:
    1. Restart SQL Server.
    2. Aja nindakake operasi apa wae.
    3. In SQL Server Management Studio, jalanake statement SQL ing ngisor iki:
      gunakake MyDatabase.mdf ngumumake @dbname varchar(255) set @dbname='MyDatabase.mdf' exec sp_dboption @dbname,'user tunggal','true' dbcc checktable('MyTable',REPAIR_ALLOW_DATA_LOSS)dbcc checktable('MyTable', ) exec sp_dboption @dbname,'user tunggal','false'
      

      Pratelan kasebut

      dbcc checktable('MyTable',REPAIR_ALLOW_DATA_LOSS)
      

      bisa nyebabake ilang sawetara data ing meja nalika nindakake operasi ndandani.

      Dene pratelan

      dbcc checktable('MyTable',REPAIR_REBUILD)
      

      Ora bakal nyebabake mundhut data sajrone operasi ndandani, nanging luwih akeh wektu.

      Dadi yen sampeyan ora urgent, sampeyan bisa nyoba kanggo nindakake statement checktable dbcc kapindho mung, yen statement ora bisa bantuan kanggo mbalekake database, sampeyan bisa nindakake printah checktable dbcc pisanan lan kaloro.

      Sawise sampeyan ngrampungake operasi ndandani kanggo kabeh tabel ngrusak, sampeyan bisa nelpon

      dbcc checkdb('MyDatabase.mdf')
      

      maneh kanggo ndeleng yen tabel ing database tetep utawa ora.

    Informasi sing luwih rinci babagan dbcc checktable printah bisa ditemokake ing https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-checktable-transact-sql?view=sql-server-ver15

  3. Yen cara 1 lan 2 isih ora bisa ndandani database rusak utawa tabel, utawa yen cara iki ora bisa mbalekake data sing dikarepake, sampeyan bisa nggunakake DataNumen SQL Recovery kanggo mbalekake data saka database MDF.