Jak opravit stav čekající na obnovení v databázi SQL Server

Když je databáze SQL Server označena v aStav čekající na obnovení, znamená to, že jeden nebo více jeho základních souborů je v nekonzistentním stavu. Proto nelze získat přístup k databázi. Jakmile budete vědět, proč k tomu dochází, můžete najít správné metody k vyřešení problému, abyste mohli znovu získat přístup ke svým datům. Poté můžete spustit dotazy v SQL Server Management Studio (SSMS) a opravitDatabáze SQL Server ve stavu čekající na obnoveníproblém.

Jak zkontrolovat stav SQL databáze

Než se pustíme do opravy stavu čekající na obnovení, podívejme se na další dostupné stavy databází SQL Server. Existují tři normální stavy databáze:

  • Online.Pokud je poškozen jeden soubor, SQL server zůstane dostupný a online.
  • Tušit.Pokud databáze nemůže obnovit poškozená data (pokud se obnovení nezdařilo), zobrazí se jako podezřelá.
  • Obnovení čeká na vyřízení.Když server ví, že databázi je třeba obnovit, ale něco se pokazilo a nemůže zahájit obnovu, zobrazí se jako čekající na obnovení.

Chcete-li zkontrolovat stav databáze, můžete použít následující SQL dotaz:

SELECT jméno, state_desc ze sys.databases

JÍT

Výsledky zobrazí všechny existující databáze spolu s jejich stavy. Pokud některá z databází zobrazuje ve sloupci state_desc hodnotu „Recovery Pending“, znamená to, že se vaše databáze nachází v tomto konkrétním stavu.

Chcete-li vyřešit problém „databáze serveru SQL v procesu obnovení“, postupujte takto:

  1. Otevřete databázi SQL v NOUZOVÉM režimu a označte ji jako READ_ONLY. To uděluje přístup pouze správci systému. Poté otevřete SQL Server Management Studio (SSMS).
  2. Vytvořte nové okno dotazu pro vaši databázi tak, že na něj kliknete pravým tlačítkem na panelu Object Explorer a vybereteNový dotaz.
  3. Proveďte následující příkazy:

ALTER DATABÁZE<DBName> NOUZOVÉ NASTAVENÍ; JÍT

ALTER DATABASE [DBName] nastavit jednoho_uživatele

JÍT

DBCC CHECKDB ([DBName], REPAIR_ALLOW_DATA_LOSS) WITH ALL_ERRORMSGS;

JÍT

ALTER DATABASE [DBName] nastavit multi_user

Viz také:Rozdíl mezi přihlášeními k serveru SQL a uživateli databáze

JÍT

  1. Po provedení výše uvedených příkazů přepněte databázi do režimu offline (odpojit) a poté zpět online (znovu připojit) pomocí příkazů:

ALTER DATABASE [DBName] NOUZOVÉ NASTAVENÍ;

ALTER DATABASE [DBName] nastavit multi_user

EXEC sp_detach_db '[DBName]'

EXEC sp_attach_single_file_db @DBName = '[DBName]', @physname = N'[mdf ​​path]'

  1. Po provedení výše uvedených kroků se server zbaví poškozeného protokolu a automaticky vytvoří nový.

Proč databáze přecházejí do stavu čekajícího na obnovení?

Databáze může přejít do stavu čekajícího na obnovení z jednoho nebo více důvodů, jako je poškození systémových datových souborů, ztracené operace zápisu a chyby disku. Ve většině případů k tomuto problému dochází, když existují nekonzistence mezi primárním souborem a jeho soubory protokolu nebo rozdílovými zálohami.

Jak opravit SQL databázi a obnovit data

Na svém serveru SQL můžete spustit příkaz DBCC CHECKDB, abyste zkontrolovali případné chyby a poškození v databázových souborech a opravili je. K obnovení ztracených souborů SQL můžete použít software pro obnovu dat. SalvageData nabízí bezplatný software pro obnovu dat. Chcete-li použít bezplatný nástroj pro obnovu dat SalvageData, musíte si nejprve stáhnout a nainstalovat software. Souhlaste s podmínkami a poté klikněte na tlačítko OBNOVA DAT.

Poté vyberte jednotku, ze které chcete načíst soubory. Poté klikněte na OBNOVIT.

Vyberte systém souborů a klikněte na SKENOVAT. Jakmile je proces skenování dokončen, můžete si ze seznamu vybrat, které soubory chcete obnovit. Pokud chcete, můžete 24 hodin denně 7 dní v týdnu 365 kontaktovat naše odborníky na obnovu dat a požádat o službu nouzové obnovy dat.

Related Posts