Berreskuratu Ustela SQL Server MDF datu basea

Duzunean SQL Server MDF datu-basea hondatuta dago, metodo hauek erabil ditzakezu bertan datuak berreskuratzeko, galera murrizteko:

Oharra: Datuak berreskuratzeko eragiketak egin aurretik, lehenbailehen egin segurtasun kopia zure MDF eta NDF datu-base fitxategi hondatuak.

  1. Lehenik eta behin, saia zaitezke SQL Server integratutako agindua DBCC CHECKDB zure datu basea berreskuratzeko. Datu base fitxategi hondatua 'MyDatabase.mdf' dela suposatuz, ondorengo gauzak egin ditzakezu bere barnean dauden datuak berreskuratzeko:
    1. Restart SQL Server.
    2. Ez egin eragiketarik.
    3. In SQL Server Management Studio, exekutatu SQL adierazpen hauek:
      use master declare @databasename varchar (255) set @ databasename = 'MyDatabase.mdf' exec sp_dboption @databasename, N'single ', N'true' - Ezarri helmuga datu basea erabiltzaile bakarreko moduan dbcc checkdb (@ databasename, REPAIR_ALLOW_DATA_LOSS ) dbcc checkdb (@ databasename, REPAIR_REBUILD) exec sp_dboption @databasename, N'single ', N'false' - Ezarri helmuga datu basea erabiltzaile anitzeko moduan
      

      Adierazpena

      dbcc checkdb (@ databasename, REPAIR_ALLOW_DATA_LOSS)
      

      baliteke zure datu-basean datu batzuk galtzea konponketa-eragiketa egitean.

      Adierazpena bitartean

      dbcc checkdb (@ databasename, REPAIR_REBUILD)
      

      EZ du datuen galerarik eragingo konponketa lanetan, baina denbora gehiago behar du.

      Beraz, premiazkoa ez bazara, lehenengo dbcc checkdb instrukzioa bakarrik egiten saia zaitezke, instrukzio horrek datu basea berreskuratzen lagundu ezin badu, lehenengo eta bigarren dbcc checkdb komandoak egin ditzakezu.

      Konponketa operazioaren ondoren, deitu dezakezu

      dbcc checkdb ('MyDatabase.mdf')
      

      berriro datu basea finkoa den edo ez ikusteko.

      Dbcc checkdb komandoari buruzko informazio zehatzagoa hemen aurki daiteke https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-checkdb-transact-sql?view=sql-server-ver15

  2. 1. metodoa erabili ondoren, dbcc checkdb-k taula batzuetan akatsak ematen baditu ere, saia zaitezke SQL Server DBCC CHECKTABLE komando integratua taula hauek zure datu basean berreskuratzeko. Datu base fitxategi hondatua 'MyDatabase.mdf' dela eta konpondu nahi duzun taula 'MyTable' dela suposatuz, honela egin dezakezu konponketa:
    1. Restart SQL Server.
    2. Ez egin eragiketarik.
    3. In SQL Server Management Studio, exekutatu SQL adierazpen hauek:
      erabili MyDatabase.mdf declarare @dbname varchar (255) set @ dbname = 'MyDatabase.mdf' exec sp_dboption @ dbname, 'erabiltzaile bakarra', 'true' dbcc checktable ('MyTable', REPAIR_ALLOW_DATA_LOSS) dbcc checktable ('MyTable', REPAIR_ ) exec sp_dboption @ dbname, 'erabiltzaile bakarra', 'faltsua'
      

      Adierazpena

      dbcc checktable ('MyTable', REPAIR_ALLOW_DATA_LOSS)
      

      baliteke zure taulako datu batzuk galtzea konponketa eragiketa egitean.

      Adierazpena bitartean

      dbcc checktable ('MyTable', REPAIR_REBUILD)
      

      EZ du datuen galerarik eragingo konponketa lanetan, baina denbora gehiago behar du.

      Beraz, premiazkoa ez bazara, lehenengo dbcc egiaztapen taulako bigarren instrukzioa bakarrik egiten saia zaitezke, instrukzio horrek datu basea berreskuratzen lagundu ezin badu, lehenengo eta bigarren dbcc egiaztapen komandoak egin ditzakezu.

      Taula hondatu guztien konponketa eragiketa amaitu ondoren, deitu dezakezu

      dbcc checkdb ('MyDatabase.mdf')
      

      berriro datu baseko taulak finkoak diren edo ez ikusteko.

    Dbcc checktable komandoari buruzko informazio zehatzagoa hemen aurki daiteke https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/dbcc-checktable-transact-sql?view=sql-server-ver15

  3. 1. eta 2. metodoek oraindik ezin badute datu-base hondatua edo taulak konpondu edo metodo hauek nahi dituzun datuak berreskuratu ezin badituzte, orduan erabil dezakezu DataNumen SQL Recovery datuak MDF datu basetik berreskuratzeko.