- Ztráta dat je běžný problém, ale my vám ukážeme, jak opravit poškozenou databázi na SQL Serveru.
- Tento problém může pocházet z jednoduchého přepsání nebo náhodného smazání souboru, virové infekce a nesprávné konfigurace.
- Nesprávné fungování úložné jednotky může také způsobit poškození souboru, a to včetně vaší databáze SQL.
Samozřejmě je frustrující objevit poškozenou databázi na vašem serveru SQL ze zřejmých důvodů. Nemáte přístup k informacím a vaše práce končí.
Existuje však mnoho způsobů, jak můžete tento problém vyřešit pomocí ručních řešení nebo pomocí inteligentního, specializovaného nástroje nástroje třetí strany zvaného Recovery Toolbox pro SQL Server.
Ale než začnete s odstraňováním problémů, pojďme pochopit a trochu prozkoumat, proč k tomuto problému dochází.
Co je to SQL Server a jak můžeme identifikovat databázi?
SQL Server je databázový systém vyvinutý společností Microsoft, který se používá pro správu, ukládání a získávání dat jinými aplikacemi.
Existují tři typy souborů pro ukládání a správu dat na serveru SQL: primární soubory (s příponou .MDF), sekundární soubory (s příponou .NDF) a soubory protokolu (s příponou .LDF).
Zajímají nás zejména tyto soubory MDF, protože to jsou ty, které poskytují úložiště databáze.
Proč dochází k poškození databáze na serveru SQL?
Existuje mnoho možných důvodů, proč může dojít k poškození databáze SQL serveru, od jednoduchého přepsání nebo náhodného smazání souboru po virové infekce a nesprávnou konfiguraci.
Pojďme se podívat na některé z nejčastějších příčin tohoto problému:
- Přepsání souboru – Pokud omylem přepíšete existující soubor MDF, riskujete poškození databáze
- Pokus o odemknutí databáze SQL - Jestli ty zapomněli jste heslo SQL a zadáte jej příliš často špatně, může to vést k poškození serveru SQL Server
- Selhání na vaší úložné jednotce – Je samozřejmé, že porucha disku může způsobit poškození souborů, včetně databáze
- Problémy s konfigurací SQL databáze – Pokud se změní konfigurace SQL, může to zakázat přístup k souborům MDF
- Virová infekce – Toto je běžný problém pro jakékoli poškození souborů, nejen databázových souborů SQL, a i když virus odstraníte pomocí nejlepších antivirů, bohužel stále můžete ztratit některá data
- Vnitřní chyby SQL – Ačkoli je to silné řešení, může mít stále své chyby, které mohou způsobit poškození souborů MDF
Jak již bylo řečeno, postupujte podle našeho podrobného průvodce a zjistěte, jak opravit soubor databáze SQL na serveru SQL.
Jak mohu opravit poškozenou databázi na serveru SQL Server?
POZNÁMKA
Poznámka: Než cokoliv spustíte, proveďte zálohu knihovny SQL.
1. Restartujte SQL Server
- Otevřete terminál a zadejte následující příkaz pro zastavení serveru SQL:
systemctl mysql stop
- Chcete-li zkontrolovat stav serveru SQL, zadejte následující příkaz a stiskněte Vstupte:
stav mysql.service
- Nyní restartujte SQL Server provedením následujícího příkazu v terminálu:
restartujte mysql.service
Někdy můžete problém vyřešit pouze restartováním serveru SQL. Samozřejmě to nefunguje pokaždé, ale je to tak snadné, že by to neuškodilo.
2. Opravte poškozený stůl
- Spusťte SQL Server.
- Zadejte následující příkaz a stiskněte Vstupte spustit to:
CHECK TABLE název_tabulky;
- Pokud zjistí nějaké problémy s tabulkou, zadejte následující příkaz a stiskněte Vstupte:
REPAIR TABLE název_tabulky;
REPAIR TABLE vám pomůže opravit tabulku a totéž můžete udělat pro všechny další poškozené, ale tímto způsobem můžete ztratit některá data z tabulky.
3. Použijte příkaz mysqlcheck
- Otevřete terminál a zadejte nebo vložte následující příkaz, abyste se dostali do složky databáze a stiskněte Vstupte:
cd /var/lib/mysql
- Nyní zadejte následující příkaz pro otestování tabulky a stiskněte Vstupte. Ujistěte se, že vyměňujete a se skutečnými jmény:
mysqlcheck
- Pokud se zobrazí zpráva, že tabulka je poškozená, opravte ji zadáním následujícího příkazu a stiskněte Vstupte:
mysqlcheck -r
4. Použijte příkazy ALTER TABLE
- Pro kontrolu typu tabulky zadejte následující příkaz (v našem případě je to tabulka MyISAM):
ZOBRAZIT VYTVOŘIT TABULKU
;
- Chcete-li tabulku znovu sestavit, zadejte následující příkaz a stiskněte Vstupte:
ALTER TABULKA
MOTOR = MyISAM;
- Pokud máte databázi InnoDB, zadejte místo toho následující příkaz:
ALTER TABULKA
MOTOR = InnoDB;
- Stáhněte a nainstalujte Microsoft SQL Server 2019
- Nejlepší zálohovací software serveru SQL [zdarma a placený]
- Jak zabezpečit databázi SQL serveru
5. Opravte databázi pomocí Recovery Toolbox pro SQL Server
- Přejděte na vyhrazenou stránku Recovery Toolbox pro SQL Server a klikněte na Stažení knoflík.
- Po výběru jazyka a přijetí licenční smlouvy nainstalujte aplikaci.
- Klikněte Dokončit spusťte nástroj pro opravu SQL Server MDF.
- Vyberte poškozené *.mdf kliknutím na ikonu zdrojové složky.
- Jakmile ji vyberete, klepněte na další knoflík.
- Nyní budete moci zobrazit náhled dat, která lze načíst z poškozené databáze Microsoft SQL Server. Klepnutím na tlačítko Další v okně nástroje pro obnovu Microsoft SQL MDF spusťte proces.
- Nyní stačí zvolit způsob exportu dat. Můžete jej uložit jako SQL skripty na disk a dokonce spustit SQL skript přímo v databázi.
- Nakonec vyberte, která data chcete uložit, a klikněte na ně Spusťte obnovu.
Takže tohle je jak opravit databázové soubory serveru SQL s tímto jednoduchým a účinným nástrojem. Jak vidíte, práci to udělá mnohem rychleji.
The Nástroj pro obnovu serveru MS SQL vám také pomůže, pokud čelíte následujícím problémům s databází MDF:
- Chyba Microsoft SQL Server 5172 – Vlastnost FILE SIZE je nesprávná
- SQL Server zjistil vstupně-výstupní chybu založenou na logické konzistenci – Je to nesprávný kontrolní součet, jinak známý jako chyba 824 na serveru SQL
- Na stránku Index Allocation Map (IAM) ukazuje další ukazatel stránky IAM – Je to docela běžný problém
- I/O chyba, špatné ID stránky, zjištěno při čtení s offsetem 0x###### v souboru FileName.mdf - Nezdá se to často, ale stále to můžete opravit pomocí tohoto malého nástroje
- Zdá se, že soubor byl zkrácen kvůli chybě operačního systému – Nejspíše způsobeno problémem s konfigurací
- Při ID záznamu protokolu došlo k chybě – Vyskytuje se při opětovném provádění zaprotokolované operace v databázi
Ve skutečnosti pomocí Recovery Toolbox pro SQL Server opravte všechny objekty poškozených souborů .mdf včetně datových typů, tabulky data buněk, pohledy, uložené procedury, vlastní funkce, spouštěče, indexy, primární a cizí klíče, omezení a ostatní.
A velkou výhodou je, že opravená data můžete z aplikace bezproblémově exportovat přímo do Microsoft SQL Serveru.
To je ono! Nyní víte, jak opravit databázi SQL Server ručně nebo pomocí speciálního nástroje.
Pokud znáte další metody nebo máte nějaké dotazy, čekáme na ně v sekci komentářů níže.