BACKUP (Transact-SQL)

SQL-adatbázis biztonsági mentése.

Termék kiválasztása

A következő sorban válassza ki a kívánt terméknevet, és csak az adott termék adatai jelenjenek meg.

A szintaxisi konvenciókról további információt a Transact-SQL szintaxiskonvenciók című témakörben talál.

* SQL Server *  

 

SQL Server

Biztonsági másolatot készít egy teljes SQL Server adatbázisról egy adatbázis biztonsági mentéséhez, vagy az adatbázis egy vagy több fájlját vagy fájlcsoportját egy fájl biztonsági mentéséhez (BACKUP DATABASE). Emellett a teljes helyreállítási modell vagy a tömegesen naplózott helyreállítási modell alatt biztonsági másolatot készít az adatbázis tranzakciónaplóiról, hogy létrehozhasson egy napló biztonsági mentést (BACKUP LOG).

Szintaxis

--Back up a whole database
BACKUP DATABASE { database_name | @database_name_var }
  TO <backup_device> [ , ...n ]
  [ <MIRROR TO clause> ] [ next-mirror-to ]
  [ WITH { DIFFERENTIAL
           | <general_WITH_options> [ , ...n ] } ]
[ ; ]

--Back up specific files or filegroups
BACKUP DATABASE { database_name | @database_name_var }
 <file_or_filegroup> [ , ...n ]
  TO <backup_device> [ , ...n ]
  [ <MIRROR TO clause> ] [ next-mirror-to ]
  [ WITH { DIFFERENTIAL | <general_WITH_options> [ , ...n ] } ]
[ ; ]

--Create a partial backup
BACKUP DATABASE { database_name | @database_name_var }
 READ_WRITE_FILEGROUPS [ , <read_only_filegroup> [ , ...n ] ]
  TO <backup_device> [ , ...n ]
  [ <MIRROR TO clause> ] [ next-mirror-to ]
  [ WITH { DIFFERENTIAL | <general_WITH_options> [ , ...n ] } ]
[ ; ]

--Back up the transaction log (full and bulk-logged recovery models)
BACKUP LOG
  { database_name | @database_name_var }
  TO <backup_device> [ , ...n ]
  [ <MIRROR TO clause> ] [ next-mirror-to ]
  [ WITH { <general_WITH_options> | <log_specific_options> } [ , ...n ] ]
[ ; ]

--Back up all the databases on an instance of SQL Server (a server)
ALTER SERVER CONFIGURATION
SET SUSPEND_FOR_SNAPSHOT_BACKUP ON
[ ; ]

BACKUP SERVER
  TO <backup_device> [ , ...n ]
  [ <MIRROR TO clause> ] [ next-mirror-to ]
  [ WITH { METADATA_ONLY
           | <general_WITH_options> [ , ...n ] } ]
[ ; ]

--Back up a group of databases
ALTER DATABASE <database>
SET SUSPEND_FOR_SNAPSHOT_BACKUP ON

ALTER DATABASE <...>
SET SUSPEND_FOR_SNAPSHOT_BACKUP ON
...

BACKUP GROUP { <database> [ , ... ] }
  TO <backup_device> [ , ...n ]
  [ <MIRROR TO clause> ] [ next-mirror-to ]
  [ WITH { METADATA_ONLY
           | <general_WITH_options> [ , ...n ] } ]
[ ; ]

<backup_device>::=
 {
  { logical_device_name | @logical_device_name_var }
 | {   DISK
     | TAPE
     | URL } =
     { 'physical_device_name' | @physical_device_name_var | 'NUL' }
 }

<MIRROR TO clause>::=
 MIRROR TO <backup_device> [ , ...n ]

<file_or_filegroup>::=
 {
   FILE = { logical_file_name | @logical_file_name_var }
 | FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }
 }

<read_only_filegroup>::=
FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }

<general_WITH_options> [ , ...n ] ::=
--Backup Set Options
   COPY_ONLY
 | [ COMPRESSION [ ( ALGORITHM = { MS_XPRESS | ZSTD | accelerator_algorithm } [ , LEVEL = { LOW | MEDIUM | HIGH } ] ) ] | NO_COMPRESSION ]
 | DESCRIPTION = { 'text' | @text_variable }
 | NAME = { backup_set_name | @backup_set_name_var }
 | CREDENTIAL
 | ENCRYPTION
 | FILE_SNAPSHOT
 | { EXPIREDATE = { 'date' | @date_var }
        | RETAINDAYS = { days | @days_var } }
 | { METADATA_ONLY | SNAPSHOT }

--Media set options
   { NOINIT | INIT }
 | { NOSKIP | SKIP }
 | { NOFORMAT | FORMAT }
 | MEDIADESCRIPTION = { 'text' | @text_variable }
 | MEDIANAME = { media_name | @media_name_variable }
 | BLOCKSIZE = { blocksize | @blocksize_variable }

--Data Transfer Options
   BUFFERCOUNT = { buffercount | @buffercount_variable }
 | MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }

--Error Management Options
   { NO_CHECKSUM | CHECKSUM }
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }

--Compatibility Options
   RESTART

--Monitoring Options
   STATS [ = percentage ]

--Tape Options
   { REWIND | NOREWIND }
 | { UNLOAD | NOUNLOAD }

--Encryption Options
 ENCRYPTION (ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY } , encryptor_options ) <encryptor_options> ::=
   SERVER CERTIFICATE = Encryptor_Name | SERVER ASYMMETRIC KEY = Encryptor_Name

<log_specific_options> [ , ...n ] ::=
--Log-specific Options
   { NORECOVERY | STANDBY = undo_file_name }
 | NO_TRUNCATE

Érvek

DATABASE

Teljes adatbázis-biztonsági mentést ad meg. Ha a fájlok és a fájlcsoportok listája meg van adva, csak ezekről a fájlokról és fájlcsoportokról készül biztonsági mentés. A teljes vagy különbözeti adatbázis biztonsági mentése során SQL Server elegendő mennyiségű tranzakciónaplót készít, hogy konzisztens adatbázist állítson elő a biztonsági mentés visszaállításakor.

Amikor visszaállít egy biztonsági másolatot, amelyet BACKUP DATABASE ( adatmentés) hozott létre, a teljes biztonsági mentés vissza lesz állítva. Csak egy napló biztonsági mentése állítható vissza egy adott időpontra vagy tranzakcióra a biztonsági mentésen belül.

Jegyzet

Csak teljes adatbázis-biztonsági mentés végezhető az master adatbázison.

NAPLÓ

Csak a tranzakciónapló biztonsági másolatát adja meg. A napló biztonsági mentése az utolsó sikeresen végrehajtott napló biztonsági mentésétől a napló aktuális végéig történik. Az első napló biztonsági mentése előtt létre kell hoznia egy teljes biztonsági másolatot.

Visszaállíthatod a napló mentését egy adott időpontra vagy tranzakcióra a biztonsági mentésen belül, ha megadod WITH STOPAT, STOPATMARK, vagy STOPBEFOREMARK a RESTORE LOG utasításodban.

Jegyzet

Egy tipikus napló biztonsági mentése után egyes tranzakciónapló-rekordok inaktívvá válnak, hacsak nem adja meg WITH NO_TRUNCATE vagy COPY_ONLY. A rendszer csonkolja a naplót, miután egy vagy több virtuális naplófájl összes rekordja inaktívvá válik. Ha a naplót nem csonkolja a rendszer a rutinnapló-biztonsági mentések után, előfordulhat, hogy valami késlelteti a napló csonkolását. További információkért lásd: A napló csonkítását késleltető tényezők.

GROUP (<adatbázis>, ... n)

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

Adatbáziscsoport biztonsági mentése. Pillanatkép-biztonsági mentést használ. A szükséges WITH METADATA_ONLY. Lásd: Transact-SQL pillanatkép biztonsági mentésének létrehozása.

KISZOLGÁLÓ

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

Biztonsági másolatot készít az összes adatbázisról a SQL Server egy példányán. Pillanatkép-biztonsági mentést használ. A szükséges WITH METADATA_ONLY. Lásd: Transact-SQL pillanatkép biztonsági mentésének létrehozása.

METADATA_ONLY

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

A pillanatkép biztonsági mentéséhez szükséges. BACKUP SERVER vagy BACKUP GROUP... Lásd: Transact-SQL pillanatkép biztonsági mentésének létrehozása.

METADATA_ONLY szinonimája a SNAPSHOT. A virtuális eszköz felülete (VDI) a SNAPSHOT. További információ a VDI-ről: Virtuális eszköz interfész (VDI) referencia.

{ database_name | @database_name_var }

Az az adatbázis, amelyről a tranzakciónapló, a részleges adatbázis vagy a teljes adatbázis biztonsági másolatot készít. Ha változóként (@database_name_var) van megadva, ez a név megadható sztringállandóként (@database_name_var = adatbázisnévként) vagy karaktersztring-adattípus változójaként, kivéve az ntext vagy szöveges adattípusokat.

Jegyzet

Az adatbázis tükrözési partnerségében lévő tükrözött adatbázisról nem lehet biztonsági másolatot készíteni.

< > file_or_filegroup [ , ... n ]

A csak ezzel a beállítással BACKUP DATABASEhasználható adatbázisfájlt vagy fájlcsoportot adja meg a fájl biztonsági mentésében, vagy egy írásvédett fájlt vagy fájlcsoportot a részleges biztonsági mentésbe való belefoglaláshoz.

FILE = { logical_file_name | @logical_file_name_var }

Egy fájl vagy változó logikai neve, amelynek értéke megegyezik a biztonsági másolatban szerepeltetni kívánt fájl logikai nevével.

FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }

Egy fájlcsoport vagy változó logikai neve, amelynek értéke megegyezik a biztonsági másolatban szerepeltetni kívánt fájlcsoport logikai nevével. Az egyszerű helyreállítási modellben a fájlcsoportok biztonsági mentése csak írásvédett fájlcsoportok esetén engedélyezett.

Jegyzet

Fontolja meg a fájl biztonsági mentésének használatát, ha az adatbázis méretére és teljesítményére vonatkozó követelmények miatt az adatbázis biztonsági mentése nem praktikus. Az NUL-eszköz a biztonsági mentések teljesítményének tesztelésére használható, éles környezetben azonban nem használható.

  • n

    Egy helyőrző, amely azt jelzi, hogy több fájl és fájlcsoport is megadható vesszővel tagolt listában. A szám korlátlan.

További információ: Full-fájl biztonsági mentése (SQL Server) és Fájlok és fájlcsoportok biztonsági mentése.

READ_WRITE_FILEGROUPS [ , FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var } [ , ... n ] ]

Részleges biztonsági mentést ad meg. A részleges biztonsági mentés tartalmazza az adatbázis összes olvasási/írási fájlát: az elsődleges fájlcsoportot és az írási/olvasási másodlagos fájlcsoportokat, valamint a megadott írásvédett fájlokat vagy fájlcsoportokat.

READ_WRITE_FILEGROUPS

Megadja, hogy az összes olvasási/írási fájlcsoportról készítsen biztonsági másolatot a részleges biztonsági másolat. Ha az adatbázis írásvédett, READ_WRITE_FILEGROUPS csak az elsődleges fájlcsoportot tartalmazza.

Fontos

Az olvasási/írási fájlcsoportok explicit felsorolása READ_WRITE_FILEGROUPS helyett egy fájl biztonsági mentésének használatával FILEGROUP .

  • FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var }

    Egy írásvédett fájlcsoport vagy változó logikai neve, amelynek értéke megegyezik egy írásvédett fájlcsoport logikai nevével, amelyet a részleges biztonsági mentés tartalmaz. További információ: "<file_or_filegroup>," a cikk korábbi részében.

  • n

    Egy helyőrző, amely azt jelzi, hogy több írásvédett fájlcsoport is megadható vesszővel tagolt listában.

    A részleges biztonsági mentésekről további információt a Partial Backups (SQL Server) című témakörben talál.

TO <backup_device> [ , ... n ]

Azt jelzi, hogy a biztonsági mentési eszközök kísérőkészlete vagy nem csodált médiakészlet, vagy a tükrözött médiakészlet első tükrözése (amelyhez egy vagy több MIRROR TO záradékot deklarálnak).

<backup_device>

A biztonsági mentési művelethez használandó logikai vagy fizikai biztonsági mentési eszközt adja meg.

{ logical_device_name | @logical_device_name_var }

A következőre vonatkozik: SQL Server.

Annak a biztonsági mentési eszköznek a logikai neve, amelyről az adatbázis biztonsági másolatot készít. A logikai névnek az azonosítókra vonatkozó szabályokat kell követnie. Ha változóként (@logical_device_name_var) adva van megadva, a biztonsági mentési eszköz neve megadható sztringállandóként (@logical_device_name_var = logikai biztonsági mentési eszköz neve), vagy bármely karaktersztring adattípus változójaként, kivéve az ntext vagy szöveges adattípusokat.

{ DISK | SZALAG | URL} = { "physical_device_name" | @physical_device_name_var | "NUL" }

A következőre vonatkozik: SQL Server.

Lemezfájlt, szalageszközt vagy URL-címet ad meg.

Az URL-formátum a Microsoft Azure Blob Storage vagy S3-kompatibilis objektumtárolóba történő biztonsági mentések létrehozására szolgál. További információkért és példákért lásd:

A Microsoft Azure Blob Storage egy felügyelt identitással készíthet biztonsági másolatot az alábbiaktól kezdve:

Jegyzet

A NUL lemezeszköz elveti a neki küldött összes információt, és csak teszteléshez használható. Ez nem éles használatra készült.

Fontos

A 2012-SQL Server (11.x) SP1 CU2 és SQL Server 2014 (12.x) között kezdődően csak egyetlen eszközre készíthet biztonsági másolatot, amikor biztonsági másolatot készít a Azure Blob Storage URL-címére. Ahhoz, hogy több eszközről is biztonsági másolatot készíthessen az URL-címről, SQL Server 2016 -os (13.x) és újabb verziót kell használnia, és közös hozzáférésű jogosultságkód (SAS) jogkivonatokat kell használnia. A megosztott hozzáférésű jogosultságkódok létrehozásával kapcsolatos példákért lásd SQL Server Azure Blob Storage és Az SQL-hitelesítő adatok közös hozzáférésű jogosultságkód (SAS) jogkivonatokkal való létrehozásának leegyszerűsítése Azure Storage a PowerShell-lel.

A lemezeszköznek nem kell léteznie ahhoz, hogy az utasításban BACKUP meg legyen adva. Ha a fizikai eszköz létezik, és a INIT beállítás nincs megadva az BACKUP utasításban, a rendszer hozzáfűzi a biztonsági másolatot az eszközhöz.

Az NUL-eszköz elveti a fájlba küldött összes bemenetet, de a biztonsági mentés továbbra is biztonsági másolatként jelöli az összes lapot.

További információ: Backup Devices (SQL Server).

Jegyzet

A TAPE beállítás a SQL Server egy későbbi verziójában lesz eltávolítva. Ne használja ezt a funkciót az új fejlesztési munkában, és tervezze meg a funkciót jelenleg használó alkalmazások módosítását.

  • n

    Egy helyőrző, amely azt jelzi, hogy legfeljebb 64 biztonsági mentési eszköz adható meg vesszővel tagolt listában.

TÜKRÖZÉS BACKUP_DEVICE <> [ , ... n ]

Legfeljebb három másodlagos biztonsági mentési eszközt határoz meg, amelyek mindegyike a záradékban TO megadott biztonsági mentési eszközöket tükrözi. A MIRROR TO záradéknak a záradékkal megegyező típusú és számú biztonsági mentési eszközt kell megadnia TO . A záradékok maximális száma MIRROR TO három.

Ez a lehetőség csak a SQL Server Enterprise kiadásában érhető el.

Jegyzet

MIRROR TO = DISK Ebben BACKUPaz esetben automatikusan meghatározza a lemezeszközök megfelelő blokkméretét a lemez szektormérete alapján. Ha a MIRROR TO lemez más szektormérettel van formázva, mint az elsődleges biztonsági mentési eszközként megadott lemez, a biztonsági mentési parancs meghiúsul. A különböző szektorméretű eszközök biztonsági mentéseinek tükrözéséhez meg kell adni a BLOCKSIZE paramétert, és az összes céleszköz esetében a legmagasabb szektorméretre kell állítani. A blokk méretéről a cikk későbbi részében található "BLOCKSIZE" című témakörben talál további információt.

<backup_device>

Lásd a szakasz korábbi, "<backup_device>".

  • n

    Egy helyőrző, amely azt jelzi, hogy legfeljebb 64 biztonsági mentési eszköz adható meg vesszővel tagolt listában. A záradékban szereplő MIRROR TO eszközök számának meg kell egyezik a záradékban szereplő TO eszközök számával.

    További információ: Médiacsaládok tükrözött médiakészletekben a cikk későbbi részében.

  • [ következő tükrözés ]

    Egy helyőrző, amely azt jelzi, hogy egy BACKUP utasítás legfeljebb három MIRROR TO záradékot tartalmazhat az egyetlen TO záradék mellett.

A WITH beállításai

A biztonsági mentési művelethez használandó beállításokat adja meg.

CREDENTIAL

A következőre vonatkozik: SQL Server.

Csak akkor használható, ha biztonsági másolatot készít Azure Blob Storage vagy S3-kompatibilis objektumtárolóról.

FÁJL_PILLANATKÉP

A: SQL Server 2016 -os (13.x) és újabb verziókra vonatkozik.

Az adatbázisfájlok Azure pillanatképének létrehozására szolgál, amikor az összes SQL Server adatbázisfájlt a Azure Blob Storage tárolja. További információ: SQL Server adatfájlok Microsoft Azure. SQL Server Pillanatkép biztonsági mentése konzisztens állapotban Azure adatbázisfájlok (adatok és naplófájlok) pillanatképeit. A Azure pillanatképek konzisztens készlete biztonsági másolatot készít, és a biztonsági mentési fájlban rögzíti. Az egyetlen különbség BACKUP DATABASE TO URL WITH FILE_SNAPSHOTBACKUP LOG TO URL WITH FILE_SNAPSHOT az, hogy az utóbbi is csonkolja a tranzakciós naplót, míg az előbbi nem. A SQL Server pillanatkép biztonsági mentésével a SQL Server által a biztonsági mentési lánc létrehozásához szükséges kezdeti teljes biztonsági mentés után csak egyetlen tranzakciónapló biztonsági mentésére van szükség az adatbázis visszaállításához a tranzakciónapló biztonsági mentésének idejére. Ezenkívül csak két tranzakciónapló biztonsági mentésére van szükség az adatbázis visszaállításához a két tranzakciónapló biztonsági mentése közötti időpontra.

DIFFERENCIÁL

A csak ezzel a beállítással BACKUP DATABASEhasználható beállítás azt határozza meg, hogy az adatbázis vagy a fájl biztonsági mentése csak az adatbázis vagy a fájl azon részeiből állhat, amelyek az utolsó teljes biztonsági mentés óta módosultak. A különbségi biztonsági mentés általában kevesebb helyet foglal el, mint a teljes biztonsági mentés. Ezt a beállítást úgy használhatja, hogy az utolsó teljes biztonsági mentés óta végrehajtott összes napló biztonsági mentését ne kelljen alkalmazni.

Jegyzet

Alapértelmezés szerint BACKUP DATABASE létrehoz egy teljes biztonsági másolatot.

További információ: Differential backups (SQL Server).

TITKOSÍTÁS

A biztonsági mentés titkosításának megadására szolgál. Megadhat egy titkosítási algoritmust, amellyel titkosíthatja a biztonsági mentést, vagy megadhatja NO_ENCRYPTION, hogy ne legyen titkosítva a biztonsági másolat. A biztonsági mentési fájlok biztonságossá tételéhez ajánlott a titkosítás. A megadható algoritmusok listája a következő:

  • AES_128
  • AES_192
  • AES_256
  • TRIPLE_DES_3KEY
  • NO_ENCRYPTION

Ha a titkosítást választja, meg kell adnia a titkosító beállításait is:

  • SERVER CERTIFICATE = Encryptor_Name
  • SERVER ASYMMETRIC KEY = Encryptor_Name

A SERVER CERTIFICATE és a SERVER ASYMMETRIC KEY egy tanúsítvány és egy aszimmetrikus kulcs, amelyet master adatbázisban hoztak létre. További információért lásd CREATE CERTIFICATE és CREATE ASYMMETRIC KEY sorrendben.

Figyelmeztetés

Ha a titkosítást az FILE_SNAPSHOT argumentummal használja, a metaadatfájl maga a megadott titkosítási algoritmussal lesz titkosítva, és a rendszer ellenőrzi, hogy az adatbázis transzparens adattitkosítása (TDE) befejeződött-e. Az adatok esetében nem történik további titkosítás. A biztonsági mentés meghiúsul, ha az adatbázis nem volt titkosítva, vagy ha a titkosítás nem fejeződött be a biztonsági mentési utasítás kiadása előtt.

Biztonsági mentési beállítások

Ezek a beállítások a biztonsági mentési művelet által létrehozott biztonsági mentési csoporton működnek.

Jegyzet

Ha biztonsági mentési készletet szeretne megadni egy visszaállítási művelethez, használja a FILE = <backup_set_file_number> lehetőséget. További információért a biztonsági mentési halmaznak meghatározásáról lásd: "Mentési halmaz meghatározása" az RESTORE Argumentumok részén.

Csak másolás

Azt adja meg, hogy a biztonsági mentés csak másolásra használható biztonsági mentés, amely nem befolyásolja a biztonsági mentések normál sorrendjét. A rendszer a csak másolatokat tartalmazó biztonsági mentést a rendszeresen ütemezett, hagyományos biztonsági másolatoktól függetlenül hozza létre. A csak másolással történő biztonsági mentés nem befolyásolja az adatbázis általános biztonsági mentési és visszaállítási eljárásait.

A csak másolásra alkalmas biztonsági másolatokat olyan helyzetekben kell használni, amikor különleges célra készít biztonsági másolatot, például biztonsági másolatot készít a naplóról egy online fájl visszaállítása előtt. A rendszer általában csak másolási naplók biztonsági mentését használja, majd törli őket.

  • Ha ezt használja BACKUP DATABASE, a COPY_ONLY beállítás létrehoz egy teljes biztonsági másolatot, amely nem szolgálhat különbségi alapként. A különbségi bitkép nem frissül, és a különbségi biztonsági mentések úgy viselkednek, mintha a csak másolásra készült biztonsági mentés nem létezne. A későbbi különbségi biztonsági mentések a legújabb hagyományos teljes biztonsági mentést használják alapként.

    Fontos

    Ha a DIFFERENTIAL és a COPY_ONLY együtt használják, a rendszer figyelmen kívül hagyja a COPY_ONLY, és létrehoz egy különbségi biztonsági másolatot.

  • Ha ezt használja BACKUP LOG, a COPY_ONLY beállítás létrehoz egy csak másolási napló biztonsági mentését, amely nem csonkolja le a tranzakciónaplót. A csak másolási naplók biztonsági mentése nincs hatással a naplóláncra, és más naplók biztonsági mentései úgy viselkednek, mintha a csak másolásra készült biztonsági másolat nem létezne.

További információ: Csak másolási biztonsági másolatok.

[ TÖMÖRÍTÉS [ ( ALGORITMUS = { MS_XPRESS | ZSTD | accelerator_algorithm } [ , LEVEL = { LOW | KÖZEPES | HIGH } ] ) ] | NO_COMPRESSION ]

Megadja, hogy biztonsági mentés tömörítési történik-e ezen a biztonsági mentésen, felülírva a kiszolgálószintű alapértelmezett értéket.

Telepítéskor az alapértelmezett viselkedés nem biztonsági mentési tömörítés. Ez az alapértelmezett beállítás azonban módosítható a biztonsági mentés tömörítésének alapértelmezett kiszolgálókonfiguráció beállításával. A beállítás aktuális értékének megtekintéséről további információt a Kiszolgáló tulajdonságainak megtekintése vagy módosítása (SQL Server) című témakörben talál.

A biztonsági másolatok transzparens adattitkosítással (TDE) kompatibilis adatbázisokkal való használatával kapcsolatos információkért lásd a Megjegyzések szakaszt .

A ZSTD tömörítési algoritmus a 2025-ös (17.x) SQL Server érhető el.

  • TÖMÖRÍTÉS

    Explicit módon engedélyezi a biztonsági mentés tömörítését.

  • NO_COMPRESSION

    Kifejezetten letiltja a biztonsági mentés tömörítését.

  • SZINT

    A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

    Ez egy választható paraméter, amely meghatározza a tömörítési szintet. A ALGORITHM = MS_EXPRESS, és a 2025-ös SQL Server (17.x) ALGORITHM = ZSTD kezdve.

    Az elfogadható értékek a következők:

    • LOW (alapértelmezett)
    • MEDIUM
    • HIGH
  • ALGORITMUS

    A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

    ZSTD és MS_EXPRESS szoftverszintű algoritmusok. QAT_DEFLATE hardveralapú algoritmus, amely intel® quickassist technológiát (QAT) igényel a SQL Server. Az alapértelmezett érték a MS_XPRESS.

    A 2025-ös SQL Server (17.x) által bevezetett ZSTD-tömörítési algoritmus használata:

    BACKUP DATABASE <database_name> TO DISK WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL = MEDIUM)
    

    Ha konfigurálta integrált gyorsítást és kiszervezést, használhatja a megoldás által biztosított gyorsítót. Ha például konfigurálta az integrált gyorsítás és kiszervezés konfigurálását, az alábbi példa a gyorsító megoldással végzi el a biztonsági mentést, a QATzip-kódtár pedig az 1. tömörítési szintet használja QZ_DEFLATE .

    BACKUP DATABASE <database_name> TO DISK WITH COMPRESSION (ALGORITHM = QAT_DEFLATE)
    

    Mintául szolgáló viselkedések:

    Biztonsági mentési utasítás Outcome
    BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH NO_COMPRESSION Biztonsági mentés tömörítés nélkül
    BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION Biztonsági mentés tömörítéssel a kiszolgálói beállítás backup compression algorithm által megadott algoritmussal (alapértelmezett MS_XPRESS)
    BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION (ALGORITHM = MS_XPRESS) Biztonsági mentés tömörítéssel algoritmus használatával MS_XPRESS
    BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION (ALGORITHM = ZSTD) Biztonsági mentés tömörítéssel ZSTD-algoritmussal.
    BACKUP DATABASE *database_name* TO {DISK | TAPE | URL} WITH COMPRESSION (ALGORITHM = ZSTD, LEVEL = HIGH) Biztonsági mentés tömörítéssel ZSTD algoritmussal tömörítési szinttel HIGH.

LEÍRÁS = { 'text' | @text_variable }

Megadja a biztonsági mentési csoportot leíró szabad formátumú szöveget. A sztring legfeljebb 255 karakter hosszúságú lehet.

NÉV = { backup_set_name | @backup_set_var }

Megadja a biztonsági mentési csoport nevét. A nevek legfeljebb 128 karakter hosszúságúak lehetnek. Ha NAME nincs megadva, akkor üres.

{ EXPIREDATE = 'dátum' | RETAINDAYS = napok }

Megadja, hogy a biztonsági mentési csoport mikor írható felül. Ha mindkét beállítást használja, RETAINDAYS elsőbbséget élvez a beállításokkal szemben EXPIREDATE.

Ha egyik beállítás sincs megadva, a lejárati dátumot a media retention konfigurációs beállítás határozza meg. További információ: kiszolgáló konfigurációs beállításai.

Fontos

Ezek a beállítások csak SQL Server akadályoznak meg egy fájl felülírását. A szalagok más módszerekkel törölhetők, a lemezfájlok pedig az operációs rendszeren keresztül törölhetők. A lejárat-ellenőrzéssel kapcsolatos további információkért tekintse meg SKIP és formázza ebben a cikkben.

  • EXPIREDATE = { 'dátum' | @date_var }

    Megadja, hogy a biztonsági mentési csoport mikor jár le, és felülírható. Ha változóként van megadva (@date_var), ennek a dátumnak a konfigurált rendszerdátumformátumot kell követnie, és az alábbiak egyikeként kell megadnia:

    • Sztringállandó (@date_var = dátum)
    • Karaktersztring adattípusú változó (kivéve a szöveges vagy szöveges adattípust)
    • Kisdátum
    • Egy datetime változó

    Például:

    • 'Dec 31, 2020 11:59 PM'
    • '1/1/2021'

    A dátum/idő értékek megadásáról további információt a Dátum és időtípusok című témakörben talál.

    Jegyzet

    A lejárati dátum figyelmen kívül hagyásához használja a SKIP lehetőséget.

  • RETAINDAYS = { nap | @days_var }

    Megadja, hogy hány napnak kell eltelnie ahhoz, hogy a biztonsági mentési adathordozó-készlet felülírható legyen. Ha változóként van megadva (@days_var), akkor egész számként kell megadni.

{ METADATA_ONLY | PILLANATKÉP }

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

METADATA_ONLY szinonimák SNAPSHOT .

Médiakészlet beállításai

Ezek a beállítások az egész adathordozón működnek.

{ NOINIT | INIT }

Azt szabályozza, hogy a biztonsági mentési művelet hozzáfűzi-e vagy felülírja-e a meglévő biztonsági mentési csoportokat a biztonsági mentési adathordozón. Az alapértelmezett beállítás a legutóbbi biztonsági mentési csoporthoz való hozzáfűzés az adathordozón (NOINIT).

Jegyzet

A(z) { NOINIT | INIT } és {NOSKIP | SKIP} közötti interakciókról a cikk későbbi részében található megjegyzésekben talál további információt.

  • NOINIT

    Azt jelzi, hogy a biztonsági mentési csoport hozzá van fűzve a megadott médiakészlethez, megőrizve a meglévő biztonsági mentési csoportokat. Ha a médiakészlethez médiajelszó van megadva, a jelszót meg kell adni. A NOINIT az alapértelmezett.

    További információ: Média-készletek, médiacsaládok és biztonsági mentési csoportok (SQL Server).

  • INIT

    Megadja, hogy az összes biztonsági mentési csoportot felülírja, de megőrzi a médiafejlécet. Ha INIT meg van adva, a rendszer felülírja az eszközön lévő meglévő biztonsági mentési csoportokat, ha a feltételek lehetővé teszik. Alapértelmezés szerint a következő feltételeket ellenőrzi, BACKUP és nem írja felül a biztonsági mentési adathordozót, ha bármelyik feltétel létezik:

    • A biztonsági mentési csoport még nem járt le. További információ: EXPIREDATE és RETAINDAYS lehetőségek.
    • Az utasításban BACKUP megadott biztonsági mentési csoport neve, ha van megadva, nem egyezik a biztonsági mentési adathordozón megadott névvel. További információkért lásd a NAME jelen szakasz korábbi, beállítását.

    Az ellenőrzések felülbírálásához használja a SKIP lehetőséget.

    További információ: Média-készletek, médiacsaládok és biztonsági mentési csoportok (SQL Server).

{ NOSKIP | SKIP }

Azt szabályozza, hogy a biztonsági mentési művelet ellenőrzi-e a biztonsági mentési csoportok lejárati dátumát és időpontját az adathordozón, mielőtt felülírja őket.

Jegyzet

A(z) { NOINIT | INIT } és {NOSKIP | SKIP} közötti interakciókról a cikk későbbi részében található megjegyzésekben talál további információt.

  • NOSKIP

    Arra utasítja az BACKUP utasítást, hogy ellenőrizze az adathordozón lévő összes biztonsági mentési készlet lejárati dátumát, mielőtt engedélyezi azok felülírását. Ez az alapértelmezett viselkedés.

  • ÁTUGRIK

    Letiltja a biztonsági mentési csoport lejáratának és nevének ellenőrzését, amelyet általában az utasítás hajt végre a BACKUP biztonsági mentési csoportok felülírásának megakadályozása érdekében. A(z) { INIT | NOINIT } és {NOSKIP | SKIP} közötti interakciókról a cikk későbbi részében található megjegyzésekben talál további információt.

    A biztonsági mentési csoportok lejárati dátumainak megtekintéséhez kérdezze le a expiration_datebiztonsági mentési készlet előzménytáblájának oszlopát.

{ NOFORMAT | FORMÁTUM }

Megadja, hogy a médiafejlécet a biztonsági mentési művelethez használt kötetekre kell-e írni, felülírva a meglévő médiafejléceket és biztonsági mentési csoportokat.

  • NOFORMAT

    Megadja, hogy a biztonsági mentési művelet megőrzi a biztonsági mentési művelethez használt médiakötetek meglévő médiafejléceit és biztonsági mentési készleteit. Ez az alapértelmezett viselkedés.

  • FORMÁTUM

    Megadja, hogy létrejön-e egy új médiakészlet. A FORMAT használatával a biztonsági mentési művelet új médiafejlécet ír a biztonsági mentési művelethez használt összes médiakötetre. A kötet meglévő tartalma érvénytelenné válik, mert a rendszer felülírja a meglévő médiafejléceket és biztonsági mentési csoportokat.

    Fontos

    Óvatosan használja FORMAT. A médiakészletek tetszőleges kötetének formázása a teljes médiakészletet használhatatlanná teszi. Ha például egy meglévő csíkos médiakészlethez tartozó szalagot inicializál, a teljes médiakészlet használhatatlanná válik.

    A FORMAT megadása azt jelenti, SKIPhogy a formátumot SKIP nem kell explicit módon megadni.

MEDIADESCRIPTION = { text | @text_variable }

A médiakészlet legfeljebb 255 karakter hosszúságú szabad formátumú szöveges leírását adja meg.

MEDIANAME = { media_name | @media_name_variable }

A teljes biztonsági mentési adathordozó-csoport médianevét adja meg. Az adathordozó neve nem lehet hosszabb 128 karakternél. Ha MEDIANAME van megadva, annak meg kell egyeznie a biztonsági mentési köteteken már meglévő, korábban megadott médianévvel. Ha nincs megadva, vagy ha a SKIP beállítás meg van adva, nem ellenőrzi az adathordozó nevét.

BLOCKSIZE = { blocksize | @blocksize_variable }

A fizikai blokk méretét adja meg bájtban. A támogatott méretek: 512, 1024, 2048, 4096, 8192, 16384, 32768 és 65536 (64 KB) bájt. A szalagos eszközök esetében az alapértelmezett érték 65536, egyéb esetben pedig 512. Ez a beállítás általában szükségtelen, mert BACKUP automatikusan kiválaszt egy, az eszköznek megfelelő blokkméretet. A blokkméret explicit megjelölése felülírja a blokkméret automatikus kiválasztását.

Ha egy CD-ROM-ra másolandó biztonsági másolatot készít, adja meg a kívánt BLOCKSIZE = 2048értéket.

Jegyzet

Ez a beállítás általában csak szalagos eszközökre való íráskor befolyásolja a teljesítményt.

Adatátviteli lehetőségek

BUFFERCOUNT = { buffercount | @buffercount_variable }

Megadja a biztonsági mentési művelethez használandó I/O-pufferek teljes számát. Bármely pozitív egész szám megadható; A nagy számú puffer azonban "memóriakihasználtságot" okozhat a Sqlservr.exe folyamat nem megfelelő virtuális címtere miatt.

A pufferek által használt teljes területet a következő határozza meg: BUFFERCOUNT * MAXTRANSFERSIZE.

A növekedés BUFFERCOUNT jelentősen csökkentheti a biztonsági mentési időt a nagyobb memóriahasználat költségén.

Jegyzet

A BUFFERCOUNT beállítás használatával kapcsolatos fontos információkért lásd a Helytelen PufferCount adatátviteli lehetőség OOM-feltételhez vezethet blogban.

MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }

A SQL Server és a biztonsági mentési adathordozó között használandó legnagyobb átviteli egység bájtban. A lehetséges értékek 65536 bájt (64 KB) többszörösei, amelyek 4 194 304 bájtig (4 MB) terjednek. Az S3-kompatibilis objektumtárolóba történő URL-címre történő biztonsági mentés adott esetben a MAXTRANSFERSIZE 10 MB. További információ: Megjegyzések.

Ha az ADATBÁZIS konfigurálta a FILESTREAM (SQL Server), vagy memory optimalizált fájlcsoportokat tartalmaz, akkor a visszaállításkor használt nagyobbnak vagy egyenlőnek kell lennie a biztonsági mentés létrehozásakor használt -tal.

Parancs 2022-SQL Server és újabb verziók
BACKUPTO URL - Azure Alapértelmezett 1 MB, max. 20 MB
BACKUP TO URL - S3 Alapértelmezett 10 MB, max. 20 MB
BACKUP LEMEZRE Az alapértelmezett érték 1 MB, max. 4 MB
BACKUP FELVÉTELRE/VDI-RE Alapértelmezett 64 KB, max. 4 MB

Transzparens adattitkosítás (TDE) esetén az egyetlen adatfájllal rendelkező adatbázisok alapértelmezett értéke MAXTRANSFERSIZE 65536 (64 KB). A nem TDE-alapú titkosított adatbázisok esetében az alapértelmezett MAXTRANSFERSIZE érték 1048576 (1 MB) a biztonsági mentéskor DISK, és 65536 (64 KB) a VDI vagy TAPEa . A TDE titkosított adatbázisokkal végzett biztonsági mentéstömörítés használatáról további információt a Megjegyzések című szakaszban talál.

Hibakezelési beállítások

Ezek a beállítások lehetővé teszik annak megállapítását, hogy a biztonsági mentési ellenőrzőösszegek engedélyezve vannak-e a biztonsági mentési művelethez, és hogy a művelet nem ütközik-e hibába.

{ NO_CHECKSUM | ELLENŐRZŐÖSSZEG }

Azt szabályozza, hogy engedélyezve vannak-e a biztonsági mentési ellenőrzőösszegek.

  • NO_CHECKSUM

    Kifejezetten letiltja a biztonsági mentési ellenőrzőösszegek létrehozását (és az oldal-ellenőrzőösszegek érvényesítését). Ez az alapértelmezett viselkedés.

  • ELLENŐRZŐÖSSZEG

    Megadja, hogy a biztonsági mentési művelet ellenőrzi az egyes lapokat az ellenőrzőösszeg és a széttört lap esetében, ha engedélyezve van és elérhető, és létrehoz egy ellenőrzőösszeget a teljes biztonsági mentéshez.

A biztonsági mentési ellenőrzőösszegek használata hatással lehet a számítási feladatra és a biztonsági mentés átviteli sebességére.

További információ: Adattár-hibák a biztonsági mentés és visszaállítás során (SQL Server).

{ STOP_ON_ERROR | CONTINUE_AFTER_ERROR }

Azt szabályozza, hogy a biztonsági mentési művelet leáll-e vagy folytatódjon-e, miután lapellenőrzési hiba történt.

  • STOP_ON_ERROR

    Arra utasítja BACKUP , hogy sikertelen legyen, ha egy oldal ellenőrzőösszege nem ellenőrzi. Ez az alapértelmezett viselkedés.

  • CONTINUE_AFTER_ERROR

    Utasítja BACKUP a folytatást, annak ellenére, hogy olyan hibákba ütközik, mint az érvénytelen ellenőrzőösszegek vagy az elszakított oldalak.

Ha az adatbázis sérült beállításával nem tud biztonsági másolatot készíteni a napló NO_TRUNCATE farkáról, a tail-log biztonsági mentését ahelyett CONTINUE_AFTER_ERRORmegadva NO_TRUNCATE kísérelheti meg.

További információ: Adattár-hibák a biztonsági mentés és visszaállítás során (SQL Server).

Kompatibilitási beállítások

ÚJRAINDÍTÁS

Nincs hatása. Ezt a lehetőséget a verzió elfogadja a SQL Server 2005 Analysis Services (SSAS) szolgáltatással való kompatibilitás érdekében.

Monitorozási beállítások

STATS [ = százalékos ]

Minden alkalommal megjelenít egy üzenetet, amikor egy másik százalékos befejeződik, és a folyamat előrehaladásának mérésére szolgál. Ha percentage nincs megadva, SQL Server minden 10 százalék befejeződése után megjelenik egy üzenet.

A STATS beállítás a következő időköz jelentésének küszöbértéke szerinti készültségi arányt jelenti. Ez körülbelül a megadott százalék; Ha például STATS = 10a befejezett összeg 40 százalék, akkor a beállítás 43 százalékot jeleníthet meg. A nagy méretű biztonsági mentési csoportok esetében ez nem jelent problémát, mert a kész százalékos arány nagyon lassan mozog a befejezett I/O-hívások között.

Szalagbeállítások

Ezek a beállítások csak az eszközökhöz TAPE használhatók. Ha nem használt eszközt használ, a rendszer figyelmen kívül hagyja ezeket a beállításokat.

{ VISSZATEKERÉS | NOREWIND }

  • VISSZATEKER

    Megadja, hogy SQL Server a szalagot felszabadítsa és visszatekerje. A REWIND az alapértelmezett.

  • NOREWIND

    Megadja, hogy SQL Server a biztonsági mentési művelet után is nyitva hagyja a szalagot. Ezzel a beállítással javíthatja a teljesítményt, ha több biztonsági mentési műveletet hajt végre egy szalagon.

    NOREWIND elemet, NOUNLOADés ezek a beállítások egyetlen BACKUP utasításon belül nem kompatibilisek.

    Jegyzet

    Ha NOREWIND használ, a SQL Server példánya mindaddig megőrzi a szalagos meghajtó tulajdonjogát, amíg az ugyanabban a folyamatban futó BACKUP vagy RESTORE utasítás a REWIND vagy UNLOAD beállítást használja, vagy a kiszolgálópéldány le nem áll. A szalag nyitva tartása megakadályozza, hogy más folyamatok hozzáférjenek a szalaghoz. A megnyitott szalagok listájának megjelenítéséről és a nyitott szalagok bezárásáról további információt a Megfelelt eszközök (SQL Server) című témakörben talál.

{ ELTÁVOLÍTÁS | NOUNLOAD }

Jegyzet

UNLOAD és NOUNLOAD azok a munkamenet-beállítások, amelyek a munkamenet élettartamáig vagy az alaphelyzetbe állításig maradnak az alternatív beállítás megadásával.

  • KIRAK

    Megadja, hogy a szalagot a rendszer a biztonsági mentés befejezésekor automatikusan újrakontrasztja és eltávolítsa. UNLOAD a munkamenet kezdetének alapértelmezett értéke.

  • FŐNÉVBETÖLTÉS

    Megadja, hogy a BACKUP művelet után a szalag betöltve maradjon a szalagmeghajtón.

Jegyzet

Szalagos biztonsági mentési eszközre történő biztonsági mentés esetén az BLOCKSIZE lehetőség, amely befolyásolja a biztonsági mentési művelet teljesítményét. Ez a beállítás általában csak szalagos eszközökre való íráskor befolyásolja a teljesítményt.

Naplóspecifikus beállítások

Ezeket a beállításokat csak a BACKUP LOGhasználja.

Jegyzet

Ha nem szeretne napló biztonsági másolatot készíteni, használja az egyszerű helyreállítási modellt. További információ: Feltárási modellek (SQL Server).

{ NORECOVERY | KÉSZENLÉTI = undo_file_name }

  • NORECOVERY

    Biztonsági másolatot készít a napló farkáról, és visszaállítja az adatbázist. NORECOVERY akkor hasznos, ha a feladatátvétel másodlagos adatbázisba történik, vagy ha a napló farkát egy RESTORE művelet előtt menti.

    A naplók csonkolását kihagyó, majd az adatbázis visszaállítása atomi állapotba hozó biztonsági mentés végrehajtásához használja együtt a NO_TRUNCATE és a NORECOVERY lehetőségeket.

  • KÉSZENLÉTI = standby_file_name

    Biztonsági másolatot készít a napló farkáról, és írásvédett állapotban STANDBY hagyja az adatbázist. A STANDBY záradék készenléti adatokat ír (visszaállítást hajt végre, de további visszaállítások lehetőségével). STANDBY A beállítás használata egyenértékű a BACKUP LOG WITH NORECOVERY következővel: .RESTORE WITH STANDBY

    A készenléti mód használatához szükség van egy készenléti fájlra, amelyet standby_file_namehatároz meg, amelynek helyét az adatbázis naplójában tárolja a rendszer. Ha a megadott fájl már létezik, a Database Engine felülírja; ha a fájl nem létezik, a Database Engine hozza létre. A készenléti fájl az adatbázis részévé válik.

    Ez a fájl tartalmazza a visszaállított módosításokat, amelyeket a műveletek későbbi alkalmazásakor RESTORE LOG vissza kell fordítani. Elegendő lemezterületnek kell lennie ahhoz, hogy a készenléti fájl növekedjen, hogy a nem véglegesített tranzakciók visszagördülésével módosított adatbázis összes különböző lapja szerepeljen benne.

NO_TRUNCATE

Azt határozza meg, hogy a tranzakciónaplót ne csonkolja, és az adatbázis állapotától függetlenül a Database Engine megkísérelje a biztonsági mentést. Így előfordulhat, hogy egy biztonsági mentés hiányos metaadatokkal NO_TRUNCATE rendelkezik. Ez a beállítás lehetővé teszi a tranzakciónapló biztonsági mentését olyan helyzetekben, amikor az adatbázis sérült.

A NO_TRUNCATE beállítás BACKUP LOG egyenértékű a mindkettő COPY_ONLY és CONTINUE_AFTER_ERRORa .

NO_TRUNCATE A beállítás nélkül az adatbázisnak állapotban ONLINE kell lennie. Ha az adatbázis FELFÜGGESZTETT állapotban van, lehetséges, hogy létrehozhat biztonsági másolatot NO_TRUNCATEmegadásával. Ha azonban az adatbázis állapota vagy állapota OFFLINE van, EMERGENCY akkor nem engedélyezett még a következővel BACKUPNO_TRUNCATE sem: Az adatbázisállapotokkal kapcsolatos információkért lásd: Adatbázisállapotok.

A biztonsági másolatok SQL Server használata

Ez a szakasz a következő alapvető biztonsági mentési fogalmakat mutatja be:

HáttértípusokTransaction Log TruncationFormatting Backup MediaMűvelet biztonsági mentési eszközökkel és médiakészletekkelAz SQL Server biztonsági mentések

Jegyzet

Az SQL Server biztonsági mentésének bemutatása: Hátrés áttekintése (SQL Server).

Biztonsági mentési típusok

A támogatott biztonsági mentési típusok az adatbázis helyreállítási modelljétől függnek, az alábbiak szerint

  • Minden helyreállítási modell támogatja az adatok teljes és különbségi biztonsági mentését.

    A biztonsági mentés hatóköre Biztonsági mentési típusok
    Teljes adatbázis adatbázis biztonsági mentései lefedik a teljes adatbázist.

    Igény szerint az egyes adatbázis-biztonsági mentések egy vagy több különbözeti adatbázis biztonsági mentésének alapjául szolgálhatnak.
    Részleges adatbázis részleges biztonsági másolatok írási/olvasási fájlcsoportokat és esetleg egy vagy több írásvédett fájlt vagy fájlcsoportot fednek le.

    Opcionálisan minden részleges biztonsági mentés egy vagy több különbségi részleges biztonsági mentésialapjául szolgálhat.
    Fájl vagy fájlcsoport fájl biztonsági mentései egy vagy több fájlra vagy fájlcsoportra vonatkoznak, és csak a több fájlcsoportot tartalmazó adatbázisokra vonatkoznak. Az egyszerű helyreállítási modellben a fájl biztonsági mentése alapvetően írásvédett másodlagos fájlcsoportokra korlátozódik.
    Igény szerint minden fájl biztonsági mentése egy vagy több különbségfájl biztonsági mentésének alapjaként szolgálhat.
  • A teljes helyreállítási modell vagy a tömegesen naplózott helyreállítási modell alatt a hagyományos biztonsági mentések közé tartoznak a szekvenciális tranzakciónapló biztonsági mentései (vagy napló biztonsági mentései), amelyek szükségesek. Minden napló biztonsági mentése a tranzakciónapló azon részét fedi le, amely a biztonsági mentés létrehozásakor aktív volt, és tartalmazza az összes olyan naplórekordot, amelyről nem készült biztonsági másolat az előző naplók biztonsági mentésében.

    A munkaveszteség-kitettség minimalizálása érdekében a felügyeleti többletköltséggel járó gyakori napló biztonsági mentéseket kell ütemeznie. A különbségi biztonsági mentések teljes biztonsági másolatok közötti ütemezése csökkentheti a visszaállítási időt azáltal, hogy csökkenti az adatok visszaállítása után visszaállítandó napló biztonsági másolatok számát.

    Javasoljuk, hogy a naplók biztonsági mentését az adatbázis biztonsági másolataitól eltérő kötetre helyezze.

    Jegyzet

    Az első napló biztonsági mentése előtt létre kell hoznia egy teljes biztonsági másolatot.

  • A csak másolásra biztonsági mentési egy speciális célú teljes biztonsági mentés vagy napló biztonsági mentése, amely független a hagyományos biztonsági mentések normál sorozatától. Ha csak másolati biztonsági másolatot szeretne készíteni, adja meg a beállítást az COPY_ONLYBACKUP utasításban. További információ: Csak másolási biztonsági másolatok.

Tranzakciónapló csonkolása

Az adatbázisok tranzakciós naplójának kitöltésének elkerülése érdekében elengedhetetlen a rutinszerű biztonsági mentések. Az egyszerű helyreállítási modellben a napló csonkolása automatikusan megtörténik az adatbázis biztonsági mentése után, a teljes helyreállítási modell alatt pedig a tranzakciónapló biztonsági mentése után. Előfordulhat azonban, hogy a csonkítási folyamat késhet. A napló csonkítását késleltető tényezőkről a tranzakciónaplóban talál további információt.

Jegyzet

A BACKUP LOG WITH NO_LOG és WITH TRUNCATE_ONLY lehetőségek megszűntek. Ha a teljes vagy tömegesen naplózott helyreállítási modell helyreállítását használja, és el kell távolítania a napló biztonsági mentési láncát egy adatbázisból, váltson az egyszerű helyreállítási modellre. További információ: Adatbázis helyreállítási modelljének megtekintése vagy módosítása (SQL Server).

Biztonsági mentési adathordozó formázása

A biztonsági mentési adathordozót utasítás BACKUP formázza, ha és csak akkor, ha az alábbiak bármelyike igaz:

  • A FORMAT beállítás meg van adva.
  • Az adathordozó üres.
  • A művelet egy folytatási szalagot ír.

Biztonsági mentési eszközök és médiakészletek használata

Eszközök biztonsági mentése csíkos adathordozó-készletben (csíkkészlet)

A sávkészlet lemezfájlok készlete, amelyeken az adatok blokkokra vannak osztva, és rögzített sorrendben vannak elosztva. A sávkészletekben használt biztonsági mentési eszközök számának meg kell egyeznie (kivéve, ha az adathordozó újraincializálva van FORMAT).

Az alábbi példa a AdventureWorks2025 adatbázis biztonsági másolatát egy új, három lemezfájlt használó csíkos adathordozó-készletre írja.

BACKUP DATABASE AdventureWorks2022
TO DISK = 'X:\SQLServerBackups\AdventureWorks1.bak',
DISK = 'Y:\SQLServerBackups\AdventureWorks2.bak',
DISK = 'Z:\SQLServerBackups\AdventureWorks3.bak'
WITH FORMAT,
    MEDIANAME = 'AdventureWorksStripedSet0',
    MEDIADESCRIPTION = 'Striped media set for AdventureWorks2022 database';
GO

Miután a biztonsági mentési eszköz egy sávkészlet részeként van definiálva, csak akkor használható egyeszközes biztonsági mentéshez, ha a FORMÁTUM meg van adva. Hasonlóképpen, a nem kötött biztonsági mentéseket tartalmazó biztonsági mentési eszköz csak akkor használható csíkkészletben, ha a FORMÁTUM meg van adva. Csíkos biztonsági mentési csoport felosztásához használja a FORMAT parancsot.

Ha a médiafejléc írásakor mindkettő MEDIANAME vagy MEDIADESCRIPTION nincs megadva, az üres elemnek megfelelő médiafejléc mező üres.

Tükrözött médiakészlettel végzett munka

A biztonsági mentések általában nem jelennek meg, és BACKUP az utasítások egyszerűen tartalmaznak egy záradékot TO . Médiakészletenként azonban összesen négy tükrözés lehetséges. Tükrözött médiakészlet esetén a biztonsági mentési művelet több biztonsági mentési eszközcsoportra is ír. A biztonsági mentési eszközök minden csoportja egyetlen tükörből áll a tükrözött médiakészleten belül. Minden tükörnek ugyanazt a mennyiséget és típusú fizikai biztonsági mentési eszközt kell használnia, amelynek mindegyiknek azonos tulajdonságokkal kell rendelkeznie.

Ha egy tükrözött médiakészletről szeretne biztonsági másolatot készíteni, az összes tükörnek jelen kell lennie. Tükrözött médiakészletre való biztonsági mentéshez adja meg a TO záradékot az első tükrözéshez, és adjon meg egy MIRROR TO záradékot minden további tükrözéshez.

Tükrözött médiakészletek esetén minden MIRROR TO záradéknak ugyanazokat az eszközök számát és típusát kell listáznia, mint a TO záradék. Az alábbi példa egy tükrözött médiakészletbe ír, amely két tükrözöttet tartalmaz, és tükrözésenként három eszközt használ:

BACKUP DATABASE AdventureWorks2022
TO DISK = 'X:\SQLServerBackups\AdventureWorks1a.bak',
DISK = 'Y:\SQLServerBackups\AdventureWorks2a.bak',
DISK = 'Z:\SQLServerBackups\AdventureWorks3a.bak'
MIRROR TO DISK = 'X:\SQLServerBackups\AdventureWorks1b.bak',
DISK = 'Y:\SQLServerBackups\AdventureWorks2b.bak',
DISK = 'Z:\SQLServerBackups\AdventureWorks3b.bak';
GO

Fontos

Ez a példa lehetővé teszi, hogy tesztelje a helyi rendszeren. A gyakorlatban az ugyanazon a meghajtón található több eszköz biztonsági mentése rontaná a teljesítményt, és megszüntetné a tükrözött médiakészletek által tervezett redundanciát.

Médiacsaládok tükrözött médiakészletekben

Az utasítás záradékában TO megadott biztonsági mentési BACKUP eszközök egy médiacsaládnak felelnek meg. Ha például a TO záradék három eszközt sorol fel, BACKUP három médiacsaládba ír adatokat. A tükrözött médiakészletekben minden tükrözöttnek tartalmaznia kell minden médiacsalád másolatát. Ezért az eszközök számának minden tükörben azonosnak kell lennie.

Ha az egyes tükrözésekhez több eszköz van felsorolva, az eszközök sorrendje határozza meg, hogy melyik médiacsaládot írja egy adott eszközre. Az egyes eszközlistákban például a második eszköz a második médiacsaládnak felel meg. Az előző példában szereplő eszközök esetében az eszközök és a médiacsaládok közötti levelezés az alábbi táblázatban látható.

Tükör Médiacsalád 1 Médiacsalád 2 Médiacsalád 3
0 Z:\AdventureWorks1a.bak Z:\AdventureWorks2a.bak Z:\AdventureWorks3a.bak
1 Z:\AdventureWorks1b.bak Z:\AdventureWorks2b.bak Z:\AdventureWorks3b.bak

A médiacsaládokat mindig ugyanarra az eszközre kell biztonsági másolatot készíteni egy adott tükörben. Ezért minden alkalommal, amikor egy meglévő médiakészletet használ, az egyes tükrözött eszközök ugyanabban a sorrendben legyenek felsorolva, mint a médiakészlet létrehozásakor.

A tükrözött médiakészletekről további információt a Mred biztonsági mentési adathordozó-készletek (SQL Server) című témakörben talál. A médiakészletekről és általában a médiacsaládokról további információt a Média-készletek, médiacsaládok és biztonsági mentési csoportok (SQL Server) című témakörben talál.

Biztonsági másolatok visszaállítása SQL Server

Egy adatbázis visszaállításához, és opcionálisan annak visszaállításához online, vagy fájl vagy fájlcsoport visszaállításához használjuk az Transact-SQL RESTORE utasítást, vagy a SQL Server Management Studio Restore feladatokat. További információ: Restore and recovery overview (SQL Server).

További szempontok az BACKUP opciókkal kapcsolatban

A SKIP, a NOSKIP, az INIT és a NOINIT interakciója

Ez a táblázat a {} és a { NOINIT | INITNOSKIP | SKIP} beállítások közötti interakciókat ismerteti.

Jegyzet

Ha a szalag adathordozója üres, vagy a lemez biztonsági mentési fájlja nem létezik, ezek az interakciók egy médiafejlécet írnak, és folytatják a műveletet. Ha az adathordozó nem üres, és nincs érvényes médiafejléce, ezek a műveletek visszajelzést adnak arról, hogy ez nem érvényes MTF-adathordozó, és leállítja a biztonsági mentési műveletet.

Kihagyás lehetőség NOINIT INIT
NOSKIP Ha a kötet érvényes médiafejlécet tartalmaz, ellenőrzi, hogy az adathordozó neve megegyezik-e az adott MEDIANAME, ha van ilyen. Ha megegyezik, hozzáfűzi a biztonsági mentési csoportot, és megőrzi az összes meglévő biztonsági mentési csoportot.
Ha a kötet nem tartalmaz érvényes médiafejlécet, hiba történik.
Ha a kötet érvényes médiafejlécet tartalmaz, a következő ellenőrzéseket hajtja végre:
  • Ha MEDIANAME meg van adva, ellenőrzi, hogy a megadott médianév megegyezik-e a médiafejléc médianevével. 1
  • Ellenőrzi, hogy nincsenek-e még nem használt biztonsági mentési csoportok a médiában. Ha van ilyen, leállítja a biztonsági mentést.

Ha ezek az ellenőrzések sikeresek, felülírja a biztonsági mentési csoportokat az adathordozón, és csak a médiafejlécet őrzi meg.
Ha a kötet nem tartalmaz érvényes médiafejlécet, létrehoz egyet a megadott MEDIANAME és MEDIADESCRIPTION– ha van – használatával.
SKIP Ha a kötet érvényes médiafejlécet tartalmaz, hozzáfűzi a biztonsági mentési csoportot, és megőrzi az összes meglévő biztonsági mentési csoportot. Ha a kötet érvényes 2 médiafejlécet tartalmaz, felülírja a biztonsági mentési csoportokat az adathordozón, és csak a médiafejlécet őrzi meg.
Ha az adathordozó üres, létrehoz egy médiafejlécet a megadott MEDIANAME és MEDIADESCRIPTION, ha van ilyen.

1 A felhasználónak a megfelelő rögzített adatbázis- vagy kiszolgálói szerepkörökhöz kell tartoznia a biztonsági mentési művelet végrehajtásához.

2 Érvényesség tartalmazza az MTF verziószámát és egyéb fejlécadatait. Ha a megadott verzió nem támogatott vagy váratlan érték, hiba történik.

Kompatibilitás

Figyelmeztet

A SQL Server újabb verziói által létrehozott biztonsági másolatok nem állíthatók vissza a SQL Server korábbi verzióiban.

BACKUP támogatja a RESTART beállítást, hogy visszamenőleges kompatibilitást biztosítson a SQL Server korábbi verzióival. De RESTART nincs hatása.

Megjegyzések

Az adatbázis- vagy naplómásolatok bármely lemezhez vagy szalagos eszközhöz hozzáfűzhetők, így egy adatbázis és annak tranzakciónaplói egyetlen fizikai helyen tárolhatók.

A BACKUP utasítás nem engedélyezett explicit vagy implicit tranzakcióban.

Az alábbi állapotokban nem készíthet biztonsági másolatot az adatbázisokról:

  • Helyreállítása
  • készenlét
  • Írásvédett

A platformfüggetlen biztonsági mentési műveletek a különböző processzortípusok között is elvégezhetők, amíg az operációs rendszer támogatja az adatbázis rendszerezését.

A 2016.SQL Server (13.x) értéktől kezdve a a 65536-nál (64 KB) lehetővé teszi a Transparent adattitkosítás (TDE) titkosított adatbázisok optimalizált tömörítési algoritmusát, amely először visszafejt egy lapot, tömöríti, majd újra titkosítja. Ha MAXTRANSFERSIZE nincs megadva, vagy ha MAXTRANSFERSIZE = 65536 (64 KB) van használatban, a TDE titkosított adatbázisokkal történő biztonsági mentéstömörítés közvetlenül tömöríti a titkosított oldalakat, és nem biztos, hogy jó tömörítési arányokat eredményez. További információ: TDE-kompatibilis adatbázisok biztonsági mentési tömörítése.

A 2019.SQL Server (15.x) CU5-től kezdve a MAXTRANSFERSIZE beállítása már nem szükséges az optimalizált tömörítési algoritmus TDE-vel való engedélyezéséhez. Ha a biztonsági mentési parancs meg van adva WITH COMPRESSION , vagy a biztonsági mentés tömörítésének alapértelmezett kiszolgálókonfigurációja 1 értékre van állítva, MAXTRANSFERSIZE a rendszer automatikusan 128 K-ra növeli az optimalizált algoritmus engedélyezéséhez. Ha MAXTRANSFERSIZE van megadva a biztonsági mentési parancsban 64 K > értékkel, a megadott érték tiszteletben lesz tartva. Más szóval, SQL Server soha nem csökkenti automatikusan az értéket, csak növeli azt. Ha egy TDE-titkosított adatbázisról MAXTRANSFERSIZE = 65536kell biztonsági másolatot készítenie, meg kell adnia WITH NO_COMPRESSION, vagy meg kell győződnie arról, hogy a biztonsági mentés tömörítésének alapértelmezett kiszolgálókonfigurációja 0 értékre van állítva.

Jegyzet

Vannak olyan esetek, amikor az alapértelmezett MAXTRANSFERSIZE nagyobb, mint 64K:

  • Ha az adatbázis több adatfájlt is létrehozott, MAXTRANSFERSIZE> 64K-t használ.
  • Ha Azure Blob Storage URL-címére készít biztonsági másolatot, az alapértelmezett MAXTRANSFERSIZE = 1048576 (1 MB).
  • Az S3-kompatibilis objektumtároló url-címére történő biztonsági mentéskor az alapértelmezett MAXTRANSFERSIZE = 10485760 (10 MB).

Az optimalizált biztonsági mentéstömörítési algoritmus eléréséhez a biztonsági mentési parancsban 64 000-nél nagyobb MAXTRANSFERSIZE kell beállítania, kivéve, ha SQL Server 2019-ben (15.x) CU5 vagy újabb verziót használ.

Alapértelmezés szerint minden sikeres biztonsági mentési művelet hozzáad egy bejegyzést a SQL Server hibanaplóba és a rendszer eseménynaplójába. Ha nagyon gyakran készít biztonsági másolatot a naplóról, ezek a sikeres üzenetek gyorsan halmozódnak fel, ami nagy hibanaplókat eredményez, amelyek megnehezíthetik más üzenetek megkeresését. Ilyen esetekben letilthatja ezeket a naplóbejegyzéseket a 3226-os nyomkövetési jelző használatával, ha az automatizálás vagy a figyelés egyike sem függ ezektől a bejegyzésektől. További információ: Nyomkövetési jelzők beállítása a DBCC TRACEON használatával.

Interoperabilitás

SQL Server egy online biztonsági mentési folyamatot használ az adatbázis biztonsági mentésének engedélyezéséhez, amíg az adatbázis még használatban van. A biztonsági mentés során a legtöbb művelet lehetséges; például egy INSERTUPDATEDELETE biztonsági mentési művelet során engedélyezettek az utasítások.

Az adatbázis vagy a tranzakciónapló biztonsági mentése során nem futtatható műveletek a következők:

  • Fájlkezelési műveletek, például a ALTER DATABASE utasítás a ADD FILE vagy REMOVE FILE beállításokkal.

  • Adatbázis- vagy fájlműveletek zsugorítása. Ez magában foglalja az automatikus szabályozási műveleteket is.

Ha egy biztonsági mentési művelet átfedésben van egy fájlkezeléssel vagy DBCC SHRINK művelettel, ütközés lép fel. Függetlenül attól, hogy melyik ütköző művelet kezdődött először, a második művelet megvárja az első művelet által beállított zárolás időtúllépését (az időtúllépési időszakot munkamenet-időtúllépési beállítás szabályozza). Ha a zárolás az időtúllépési időszak alatt szabadul fel, a második művelet folytatódik. Ha a zárolás túllépi az időkorlátot, a második művelet meghiúsul.

Metaadatok

SQL Server a következő biztonsági mentési előzményeket tartalmazó táblákat tartalmazza, amelyek nyomon követik a biztonsági mentési tevékenységet:

A visszaállítás végrehajtásakor, ha a biztonsági mentési csoport még nem lett rögzítve az msdb adatbázisban, a biztonsági mentési előzménytáblák módosulhatnak.

Biztonság

A 2012.SQL Server (11.x) verziótól kezdve a biztonsági másolatok létrehozásához megszűnik a PASSWORD és MEDIAPASSWORD beállítás. Továbbra is visszaállítható a jelszóval létrehozott biztonsági másolatok.

Engedélyek

BACKUP DATABASE és BACKUP LOG engedélyek alapértelmezés szerint a sysadmin rögzített kiszolgálói szerepkör, valamint a db_owner és db_backupoperator rögzített adatbázis-szerepkörök tagjai számára.

A biztonsági mentési eszköz fizikai fájljának tulajdonjogi és engedélyproblémái zavarhatják a biztonsági mentési műveletet. Győződjön meg arról, hogy SQL Server indítási fióknak olvasási és írási engedélyekkel kell rendelkeznie a biztonsági mentési eszközre és arra a mappára, ahová a biztonsági mentési fájlokat meg kell írnia. Azonban sp_addumpdevice, amely egy biztonsági mentési eszköz bejegyzését adja hozzá a rendszertáblákhoz, nem ellenőrzi a fájlhozzáférési engedélyeket. Előfordulhat, hogy a biztonsági mentési eszköz fizikai fájljának ilyen problémái mindaddig nem jelennek meg, amíg a fizikai erőforrás hozzá nem fér a biztonsági mentés vagy a visszaállítás megkísérlésekor.

Példák

Ez a szakasz a következő példákat tartalmazza:

Jegyzet

A biztonsági mentés útmutatói további példákat tartalmaznak. További információ: Hátrés áttekintése (SQL Server).

Egy. Teljes adatbázis biztonsági mentése

Az alábbi példa biztonsági másolatot készít a AdventureWorks2025 adatbázisról egy lemezfájlra.

BACKUP DATABASE AdventureWorks2022
TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
WITH FORMAT;
GO

B. Az adatbázis biztonsági mentése és naplózása

Az alábbi példa biztonsági másolatot készít a AdventureWorks2025 mintaadatbázisról, amely alapértelmezés szerint az egyszerű helyreállítási modellt használja. A naplók biztonsági mentésének támogatása érdekében a AdventureWorks2025 adatbázis a teljes helyreállítási modell használatára módosul.

A példa a sp_addumpdevice használatával hoz létre egy logikai biztonsági mentési eszközt az adatok biztonsági mentéséhez, AdvWorksData, és létrehoz egy másik logikai biztonsági mentési eszközt a napló biztonsági mentéséhez, AdvWorksLog.

A példa ezután létrehoz egy teljes adatbázis-biztonsági másolatot AdvWorksData, majd egy frissítési tevékenység után biztonsági másolatot készít a naplóról AdvWorksLog.

-- To permit log backups, before the full database backup, modify the database
-- to use the full recovery model.
USE master;
GO

ALTER DATABASE AdventureWorks2022 SET RECOVERY FULL;
GO

-- Create AdvWorksData and AdvWorksLog logical backup devices.
USE master;
GO

EXECUTE sp_addumpdevice 'disk', 'AdvWorksData', 'Z:\SQLServerBackups\AdvWorksData.bak';
GO

EXECUTE sp_addumpdevice 'disk', 'AdvWorksLog', 'X:\SQLServerBackups\AdvWorksLog.bak';
GO

-- Back up the full AdventureWorks2022 database.
BACKUP DATABASE AdventureWorks2022 TO AdvWorksData;
GO

-- Back up the AdventureWorks2022 log.
BACKUP LOG AdventureWorks2022 TO AdvWorksLog;
GO

Jegyzet

Éles adatbázis esetén rendszeresen készítsen biztonsági másolatot a naplóról. A naplók biztonsági mentésének elég gyakorinak kell lennie ahhoz, hogy megfelelő védelmet biztosítson az adatvesztés ellen.

C. A másodlagos fájlcsoportok teljes biztonsági mentésének létrehozása

Az alábbi példa minden fájl teljes biztonsági mentését hozza létre mindkét másodlagos fájlcsoportban.

--Back up the files in SalesGroup1:
BACKUP DATABASE Sales
    FILEGROUP = 'SalesGroup1', FILEGROUP = 'SalesGroup2'
    TO DISK = 'Z:\SQLServerBackups\SalesFiles.bck';
GO

D. A másodlagos fájlcsoportok különbségfájl biztonsági mentésének létrehozása

Az alábbi példa egy különbségfájl biztonsági mentését hozza létre mindkét másodlagos fájlcsoportban lévő összes fájlról.

--Back up the files in SalesGroup1:
BACKUP DATABASE Sales
FILEGROUP = 'SalesGroup1', FILEGROUP = 'SalesGroup2'
TO DISK = 'Z:\SQLServerBackups\SalesFiles.bck'
WITH DIFFERENTIAL;
GO

E. Egycsaládos tükrözött médiakészlet létrehozása és biztonsági mentése

Az alábbi példa egy tükrözött médiakészletet hoz létre, amely egyetlen médiacsaládot és négy tükrözést tartalmaz, és biztonsági másolatot készít róluk a AdventureWorks2025 adatbázisról.

BACKUP DATABASE AdventureWorks2022
TO TAPE = '\\.\tape0'
MIRROR TO TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2'
MIRROR TO TAPE = '\\.\tape3'
WITH FORMAT, MEDIANAME = 'AdventureWorksSet0';

F. Többtényezős tükrözött médiakészlet létrehozása és biztonsági mentése

Az alábbi példa egy tükrözött médiakészletet hoz létre, amelyben minden tükör két médiacsaládból áll. A példa ezután biztonsági másolatot készít a AdventureWorks2025 adatbázisról mindkét tükrözőre.

BACKUP DATABASE AdventureWorks2022
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3'
WITH FORMAT, MEDIANAME = 'AdventureWorksSet1';

G. Meglévő tükrözött médiakészlet biztonsági mentése

Az alábbi példa hozzáfűz egy biztonsági mentési csoportot az előző példában létrehozott médiakészlethez.

BACKUP LOG AdventureWorks2022
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1'
MIRROR TO TAPE = '\\.\tape2', TAPE = '\\.\tape3'
WITH NOINIT, MEDIANAME = 'AdventureWorksSet1';

Jegyzet

NOINIT, amely az alapértelmezett, itt látható az egyértelműség kedvéért.

H. Tömörített biztonsági mentés létrehozása új médiakészletben

Az alábbi példa formázja az adathordozót, létrehoz egy új médiakészletet, és tömörített teljes biztonsági másolatot készít a AdventureWorks2025 adatbázisról.

BACKUP DATABASE AdventureWorks2022
    TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'
    WITH FORMAT, COMPRESSION;

Én. Biztonsági mentés a Microsoft Azure Blob Storage

Ez a példa a Azure Blob Storage Sales teljes adatbázis-biztonsági mentését hajtja végre. A tárfiók neve mystorageaccount. A tároló neve myfirstcontainer. Már létrejött egy tárolt hozzáférési szabályzat olvasási, írási, törlési és listajogokkal. A SQL Server hitelesítő adat (https://mystorageaccount.blob.core.windows.net/myfirstcontainer) a tárolt hozzáférési szabályzathoz társított közös hozzáférésű jogosultságkóddal lett létrehozva. A Azure Blob Storage SQL Server biztonsági mentéséről további információt SQL Server biztonsági mentés és visszaállítás Azure Blob Storage és SQL Server url-címre történő biztonsági mentésével Azure Blob Storage.

BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales.bak'
WITH STATS = 5;

Az adatbázisról több csíkra is készíthet biztonsági másolatot, és az így nézne ki:

BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-01.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-02.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-03.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-04.bak'
WITH COPY_ONLY;

J. Biztonsági mentés S3-kompatibilis objektumtárolóra

A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziók.

Ez a példa a Sales adatbázis teljes biztonsági mentési adatbázisát hajtja végre S3-kompatibilis objektumtároló platformra. A hitelesítő adatok neve nem kötelező az utasításban vagy a pontos URL-cím elérési útjának egyeztetéséhez, de elvégzi a megfelelő hitelesítő adatok keresését a megadott URL-címen. További információ: A SQL Server visszaállítása és visszaállítása S3-kompatibilis objektumtárolóval.

BACKUP DATABASE Sales
TO URL = 's3://10.10.10.10:8787/sqls3backups/sales_01.bak',
URL = 's3://10.10.10.10:8787/sqls3backups/sales_02.bak',
URL = 's3://10.10.10.10:8787/sqls3backups/sales_03.bak'
WITH FORMAT, STATS = 10, COMPRESSION;

K. A biztonsági mentési utasítás állapotának nyomon követése

Az alábbi lekérdezés a jelenleg futó biztonsági mentési utasításokra vonatkozó információkat adja vissza:

SELECT a.text AS query,
       start_time,
       percent_complete,
       dateadd(second, estimated_completion_time / 1000, getdate()) AS eta
FROM sys.dm_exec_requests AS r
CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) AS a
WHERE r.command LIKE 'BACKUP%';

* felügyelt SQL-példány *  

 

Azure SQL Managed Instance

SQL-adatbázis biztonsági mentése Azure SQL Managed Instance. Azure SQL Managed Instance automatikus biztonsági másolatokkal rendelkezik. Létrehozhat teljes adatbázis-COPY_ONLY biztonsági mentéseket. A különbségi, a napló- és a fájl-pillanatkép-biztonsági mentések nem támogatottak.

A Azure Arc által engedélyezett SQL Managed Instance is vonatkozik.

Szintaxis

BACKUP DATABASE { database_name | @database_name_var }
  TO URL = { 'physical_device_name' | @physical_device_name_var } [ , ...n ]
  WITH COPY_ONLY [ , { <general_WITH_options> } ]
[ ; ]

<general_WITH_options> [ , ...n ] ::=

--Media set options
   MEDIADESCRIPTION = { 'text' | @text_variable }
 | MEDIANAME = { media_name | @media_name_variable }
 | BLOCKSIZE = { blocksize | @blocksize_variable }

--Data Transfer Options
   BUFFERCOUNT = { buffercount | @buffercount_variable }
 | MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }

--Error Management Options
   { NO_CHECKSUM | CHECKSUM }
 | { STOP_ON_ERROR | CONTINUE_AFTER_ERROR }

--Compatibility Options
   RESTART

--Monitoring Options
   STATS [ = percentage ]

--Encryption Options
 ENCRYPTION (ALGORITHM = { AES_128 | AES_192 | AES_256 | TRIPLE_DES_3KEY } , encryptor_options ) <encryptor_options> ::=
   SERVER CERTIFICATE = Encryptor_Name | SERVER ASYMMETRIC KEY = Encryptor_Name

Érvek

DATABASE

Teljes adatbázis-biztonsági mentést ad meg. Az adatbázis biztonsági mentése során Azure SQL Managed Instance elegendő mennyiségű tranzakciónaplót készít, hogy konzisztens adatbázist állítson elő a biztonsági mentés visszaállításakor.

Fontos

Egy felügyelt példányon létrehozott adatbázis biztonsági mentése csak egy másik Azure SQL Managed Instance vagy csak SQL Server 2022-példányra állítható vissza. Ennek az az oka, hogy SQL Managed Instance a SQL Server más verzióihoz képest magasabb belső adatbázis-verzióval rendelkezik. További információ: A 2022.

Amikor visszaállít egy biztonsági másolatot, amelyet BACKUP DATABASE ( adatmentés) hozott létre, a teljes biztonsági mentés vissza lesz állítva. Ha SQL Managed Instance automatikus biztonsági mentésről szeretne visszaállítani, tekintse meg Adatbázis visszaállítása Azure SQL Managed Instance.

{ database_name | @database_name_var }

Az adatbázis, amelyről a teljes adatbázis biztonsági másolatot készít. Ha változóként (@database_name_var) van megadva, ez a név megadható sztringállandóként (@database_name_var = adatbázisnévként) vagy karaktersztring-adattípus változójaként, kivéve az ntext vagy szöveges adattípusokat.

További információ: Teljes fájl biztonsági mentése és Fájlok és fájlcsoportok biztonsági mentése.

URL-CÍM

Megadja a biztonsági mentési művelethez használni kívánt URL-címet. Az URL-formátum a Microsoft Azure storage szolgáltatásba történő biztonsági mentések létrehozására szolgál.

Fontos

Ahhoz, hogy több eszközről is biztonsági másolatot készíthessen az URL-címről, közös hozzáférésű jogosultságkód (SAS) jogkivonatokat kell használnia. A megosztott hozzáférésű jogosultságkódok létrehozásával kapcsolatos példákért lásd: SQL Server Biztonsági mentés URL-címre és Az SQL-hitelesítő adatok közös hozzáférésű jogosultságkód (SAS) jogkivonatokkal való létrehozásának leegyszerűsítése Azure Storage a PowerShell-lel.

  • n

    Egy helyőrző, amely azt jelzi, hogy legfeljebb 64 biztonsági mentési eszköz adható meg vesszővel tagolt listában.

A WITH beállításai

A biztonsági mentési művelethez használandó beállításokat adja meg.

TITKOSÍTÁS

A biztonsági mentés titkosításának megadására szolgál. Megadhat egy titkosítási algoritmust, amellyel titkosíthatja a biztonsági mentést, vagy megadhatja NO_ENCRYPTION, hogy ne legyen titkosítva a biztonsági másolat. A biztonsági mentési fájlok biztonságossá tételéhez ajánlott a titkosítás. A megadható algoritmusok listája a következő:

  • AES_128
  • AES_192
  • AES_256
  • TRIPLE_DES_3KEY
  • NO_ENCRYPTION

Ha a titkosítást választja, meg kell adnia a titkosító beállításait is:

  • SERVER CERTIFICATE = <Encryptor_Name>
  • SERVER ASYMMETRIC KEY = <Encryptor_Name>

Biztonsági mentési beállítások

Csak másolás

Azt adja meg, hogy a biztonsági mentés csak másolásra használható biztonsági mentés, amely nem befolyásolja a biztonsági mentések normál sorrendjét. A rendszer a Azure SQL Database automatikus biztonsági mentéstől függetlenül hozza létre a csak másolásra készült biztonsági másolatot. További információ: Copy-Only Biztonsági másolatok.

{ TÖMÖRÍTÉS | NO_COMPRESSION }

Megadja, hogy biztonsági mentés tömörítési történik-e ezen a biztonsági mentésen, felülírva a kiszolgálószintű alapértelmezett értéket.

Az alapértelmezett viselkedés nem biztonsági mentési tömörítés. Ez az alapértelmezett beállítás azonban módosítható a biztonsági mentés tömörítésének alapértelmezett kiszolgálókonfiguráció beállításával. A beállítás aktuális értékének megtekintéséről további információt a Kiszolgáló tulajdonságainak megtekintése vagy módosításacímű témakörben talál.

  • TÖMÖRÍTÉS

    Explicit módon engedélyezi a biztonsági mentés tömörítését.

  • NO_COMPRESSION

    Kifejezetten letiltja a biztonsági mentés tömörítését.

LEÍRÁS = { 'text' | @text_variable }

Megadja a biztonsági mentési csoportot leíró szabad formátumú szöveget. A sztring legfeljebb 255 karakter hosszúságú lehet.

NÉV = { backup_set_name | @_backup|set_var }

Megadja a biztonsági mentési csoport nevét. A nevek legfeljebb 128 karakter hosszúságúak lehetnek. Ha NAME nincs megadva, akkor üres.

MEDIADESCRIPTION = { text | @text_variable }

A médiakészlet legfeljebb 255 karakter hosszúságú szabad formátumú szöveges leírását adja meg.

MEDIANAME = { media_name | @media_name_variable }

A teljes biztonsági mentési adathordozó-csoport médianevét adja meg. Az adathordozó nevének legfeljebb 128 karakter hosszúságúnak kell lennie, ha MEDIANAME van megadva, akkor meg kell egyeznie a biztonsági mentési köteteken már meglévő, korábban megadott médianévvel. Ha nincs megadva, vagy ha a SKIP beállítás meg van adva, nem ellenőrzi az adathordozó nevét.

BLOCKSIZE = { blocksize | @blocksize_variable }

A fizikai blokk méretét adja meg bájtban. A támogatott méretek: 512, 1024, 2048, 4096, 8192, 16384, 32768 és 65536 (64 KB) bájt. A szalagos eszközök esetében az alapértelmezett érték 65536, egyéb esetben pedig 512. Ez a beállítás általában szükségtelen, mert BACKUP automatikusan kiválaszt egy, az eszköznek megfelelő blokkméretet. A blokkméret explicit megjelölése felülírja a blokkméret automatikus kiválasztását.

Adatátviteli lehetőségek

BUFFERCOUNT = { buffercount | @buffercount_variable }

Megadja a biztonsági mentési művelethez használandó I/O-pufferek teljes számát. Bármely pozitív egész szám megadható; A nagy számú puffer azonban "memóriakihasználtságot" okozhat a Sqlservr.exe folyamat nem megfelelő virtuális címtere miatt.

A pufferek által használt teljes területet a következő határozza meg: BUFFERCOUNT * MAXTRANSFERSIZE.

Jegyzet

A BUFFERCOUNT beállítás használatával kapcsolatos fontos információkért lásd a blogbejegyzést, Helytelen PufferCount adatátviteli lehetőség OOM-feltételhez vezethet.

MAXTRANSFERSIZE = { maxtransfersize | @maxtransfersize_variable }

A SQL Server és a biztonsági mentési adathordozó között használandó legnagyobb átviteli egység bájtban. A lehetséges értékek 65536 bájt (64 KB) többszörösei, amelyek 4 194 304 bájtig (4 MB) terjednek.

Parancs Azure SQL Managed Instance

SQL Server 2022-SQL Server 2025-ös frissítési szabályzat
Azure SQL Managed Instance

Always-up-to-date szabályzat
BACKUPTO URL - Azure Dinamikus, amelyet a szolgáltatás az automatikus biztonsági mentésekhez választott.

COPY_ONLY biztonsági másolatok esetén: Alapértelmezett 1 MB, Max. 100 MB
Dinamikus, amelyet a szolgáltatás az automatikus biztonsági mentésekhez választott.

COPY_ONLY biztonsági másolatok esetén: Alapértelmezett 1 MB, Max. 100 MB

Transzparens adattitkosítással (TDE) rendelkező adatbázisok esetében az alapértelmezett érték MAXTRANSFERSIZE 65536 (64 KB). A nem TDE titkosítású adatbázisok esetében az alapértelmezett MAXTRANSFERSIZE érték 1048576 (1 MB) a biztonsági mentéskor DISKa 65536-ra (64 KB) vDI vagy TAPE.

Jegyzet

MAXTRANSFERSIZE A legnagyobb átviteli egységet adja meg, és nem garantálja, hogy minden írási művelet a megadott legnagyobb méretet adja át. MAXTRANSFERSIZE a csíkos tranzakciónaplók biztonsági mentéseinek írási műveleteihez a rendszer 64 KB-ra van beállítva.

Hibakezelési beállítások

Ezek a beállítások lehetővé teszik annak megállapítását, hogy a biztonsági mentési ellenőrzőösszegek engedélyezve vannak-e a biztonsági mentési művelethez, és hogy a művelet nem ütközik-e hibába.

{ NO_CHECKSUM | ELLENŐRZŐÖSSZEG }

Azt szabályozza, hogy engedélyezve vannak-e a biztonsági mentési ellenőrzőösszegek.

  • NO_CHECKSUM

    Kifejezetten letiltja a biztonsági mentési ellenőrzőösszegek létrehozását (és az oldal-ellenőrzőösszegek érvényesítését). Ez az alapértelmezett viselkedés.

  • ELLENŐRZŐÖSSZEG

    Megadja, hogy a biztonsági mentési művelet ellenőrzi az egyes lapokat az ellenőrzőösszeg és a széttört lap esetében, ha engedélyezve van és elérhető, és létrehoz egy ellenőrzőösszeget a teljes biztonsági mentéshez.

A biztonsági mentési ellenőrzőösszegek használata hatással lehet a számítási feladatra és a biztonsági mentés átviteli sebességére.

További információ: Lehetséges médiahibák biztonsági mentés és visszaállítás során.

{ STOP_ON_ERROR | CONTINUE_AFTER_ERROR }

Azt szabályozza, hogy a biztonsági mentési művelet leáll-e vagy folytatódjon-e, miután lapellenőrzési hiba történt.

  • STOP_ON_ERROR

    Arra utasítja BACKUP , hogy sikertelen legyen, ha egy oldal ellenőrzőösszege nem ellenőrzi. Ez az alapértelmezett viselkedés.

  • CONTINUE_AFTER_ERROR

    Utasítja BACKUP a folytatást, annak ellenére, hogy olyan hibákba ütközik, mint az érvénytelen ellenőrzőösszegek vagy az elszakított oldalak.

Ha az adatbázis sérült beállításával nem tud biztonsági másolatot készíteni a napló NO_TRUNCATE farkáról, a tail-log biztonsági mentését ahelyett CONTINUE_AFTER_ERRORmegadva NO_TRUNCATE kísérelheti meg.

További információ: Lehetséges médiahibák biztonsági mentés és visszaállítás során.

Kompatibilitási beállítások

ÚJRAINDÍTÁS

Nincs hatása. Ezt a lehetőséget a verzió elfogadja a SQL Server korábbi verzióival való kompatibilitás érdekében.

Monitorozási beállítások

STATS [ = százalékos ]

Minden alkalommal megjelenít egy üzenetet, amikor egy másik százalékos befejeződik, és a folyamat előrehaladásának mérésére szolgál. Ha percentage nincs megadva, SQL Server minden 10 százalék befejeződése után megjelenik egy üzenet.

A STATS beállítás a következő időköz jelentésének küszöbértéke szerinti készültségi arányt jelenti. Ez körülbelül a megadott százalék; Ha például STATS = 10a befejezett összeg 40 százalék, akkor a beállítás 43 százalékot jeleníthet meg. A nagy méretű biztonsági mentési csoportok esetében ez nem jelent problémát, mert a kész százalékos arány nagyon lassan mozog a befejezett I/O-hívások között.

A SQL Managed Instance korlátozásai

A biztonsági mentési csíkok maximális mérete 195 GB (maximális blobméret). Növelje a csíkok számát a biztonsági mentési parancsban, hogy csökkentse az egyes csíkok méretét, és maradjon ezen a korláton belül.

Biztonság

Engedélyek

BACKUP DATABASE engedélyek alapértelmezés szerint a sysadmin rögzített kiszolgálói szerepkör, valamint a db_owner és db_backupoperator rögzített adatbázis-szerepkörök tagjai számára.

Az URL tulajdonjogával és engedélyével kapcsolatos problémák zavarhatják a biztonsági mentési műveletet. SQL Server képesnek kell lennie az eszköz olvasására és írására; annak a fióknak, amelyen a SQL Server szolgáltatás fut, írási engedélyekkel kell rendelkeznie.

Példák

A példa egy COPY_ONLY biztonsági másolatot készít Sales a Microsoft Azure Blob Storage. A tárfiók neve mystorageaccount. A tároló neve myfirstcontainer. Egy tárolt hozzáférési szabályzat lett létrehozva olvasási, írási, törlési és listajogokkal. A SQL Server hitelesítő adat (https://mystorageaccount.blob.core.windows.net/myfirstcontainer) a tárolt hozzáférési szabályzathoz társított közös hozzáférésű jogosultságkóddal lett létrehozva. A Azure Blob Storage SQL Server biztonsági mentéséről további információt a SQL Server A Microsoft Azure Blob Storage és SQL Server URL-címre történő biztonsági mentés című témakörben talál.

BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales_20160726.bak'
WITH STATS = 5, COPY_ONLY;

Az adatbázisról több csíkra is készíthet biztonsági másolatot, és az így nézne ki:

BACKUP DATABASE Sales
TO URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-01.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-02.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-03.bak',
URL = 'https://mystorageaccount.blob.core.windows.net/myfirstcontainer/Sales-04.bak'
WITH COPY_ONLY;