sql >> Databáze >  >> RDS >> SQLite

Zálohujte databázi SQLite

Příkazový řádek SQLite poskytuje .backup tečka, která vám umožní rychle a snadno zálohovat databázi.

Chcete-li použít tento příkaz, zadejte název databáze, kterou chcete zálohovat, a název souboru zálohy.

Příklad

Zde je příklad zálohování databáze.

.backup Store Store_backup.db

Tím se zálohuje databáze s názvem Store do záložního souboru s názvem Store_backup.db v aktuálním adresáři.

Chcete-li zálohovat do jiného adresáře, použijte cestu. Například:

.backup Store /Users/sqlite/bak/Store_backup.db

Zálohujte hlavní databázi

První argument je nepovinný. Můžete se například připojit k SQLite takto:

sqlite3 Chinook.db

Což otevře Chinook.db databáze. Tato databáze se zobrazí jako hlavní databáze.

Potom spusťte toto:

.backup Chinook_backup.db

Tím dojde k zálohování databáze do zadaného souboru.

Zálohujte aktuálně připojenou databázi

Zde je další příklad, který je podobný předchozímu, ale s mírně odlišným případem použití.

V tomto příkladu se připojuji k SQLite bez zadání databáze. Poté připojím databázi a spustím .backup příkaz.

Kvůli stručnosti zkombinuji všechny příkazy:

sqlite3
ATTACH DATABASE 'Store.db' AS Store;
.backup Backup.db

Tím se zálohuje Obchod databáze.

Obnovit/použít zálohu

Můžete použít .restore příkaz k obnovení databáze. Tím se přijme název databáze, do které se má obnovit, následovaný umístěním záložního souboru.

Příklad:

ATTACH DATABASE 'Chinook2.db' AS Chinook2;
.restore Chinook2 Chinook_backup.db

V tomto případě jsem vytvořil prázdnou databázi s názvem Chinook2 pomocí kterého se záloha obnoví.

Dalším způsobem, jak to udělat, je jednoduše připojit zálohu, stejně jako byste to udělali s jakýmkoli jiným databázovým souborem:

ATTACH DATABASE 'Chinook_backup.db' AS Chinook;

Pokud použijete tuto metodu, pravděpodobně budete chtít pořídit kopii svých záloh a připojit pouze kopii. Jinak zálohu přepíšete a nebude možné ji obnovit zpět na dřívější verzi.


  1. Spusťte všechny soubory SQL v adresáři

  2. SQL Server SP - Předat parametr pro seznam polí IN?

  3. Proč se autoinkrement MySQL zvyšuje u neúspěšných vložení?

  4. MySQL:více tabulek nebo jedna tabulka s mnoha sloupci?