Pemulihan Sepotong Database Dengan Tabel yang Dioptimalkan Memori

Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Pemulihan sepotong didukung pada database dengan tabel yang dioptimalkan memori kecuali untuk satu batasan yang dijelaskan di bawah ini. Untuk informasi selengkapnya tentang pencadangan dan pemulihan sepotong, lihat PEMULIHAN (Transact-SQL) dan Pemulihan Piecemeal (SQL Server).

Grup file yang dioptimalkan memori harus dicadangkan dan dipulihkan bersama dengan grup file utama:

  • Jika Anda mencadangkan (atau memulihkan) grup file utama, Anda harus menentukan grup file yang dioptimalkan memori.

  • Jika Anda mencadangkan (atau memulihkan) grup file yang dioptimalkan memori, Anda harus menentukan grup file utama.

Skenario utama untuk pencadangan dan pemulihan sepotong adalah,

  • Pencadangan piecemeal memungkinkan Anda mengurangi ukuran cadangan. Beberapa contoh:

    • Konfigurasikan pencadangan database agar terjadi pada waktu atau hari yang berbeda untuk meminimalkan dampak pada beban kerja. Salah satu contohnya adalah database yang sangat besar (lebih besar dari 1 TB) di mana pencadangan database lengkap tidak dapat diselesaikan dalam waktu yang dialokasikan untuk pemeliharaan database. Dalam situasi itu, Anda dapat menggunakan cadangan piecemeal untuk mencadangkan database lengkap dalam beberapa cadangan sepotong.

    • Jika grup file ditandai baca-saja, grup file tidak memerlukan pencadangan log transaksi setelah ditandai baca-saja. Anda dapat memilih untuk mencadangkan grup file hanya sekali setelah menandainya baca-saja.

  • Pemulihan sepotong.

    • Tujuan dari pemulihan sepotong adalah untuk membawa bagian penting database online tanpa menunggu semua data. Salah satu contohnya adalah jika database memiliki data yang dipartisi, sehingga partisi yang lebih lama hanya jarang digunakan. Anda hanya dapat memulihkannya sesuai kebutuhan. Mirip untuk grup file yang berisi, misalnya, data historis.

    • Dengan menggunakan perbaikan halaman, Anda dapat memperbaiki kerusakan halaman dengan secara khusus memulihkan halaman. Untuk informasi selengkapnya, lihat Memulihkan Halaman (SQL Server).

Sampel

Contohnya menggunakan skema berikut:

CREATE DATABASE imoltp
    ON PRIMARY (
        name = imoltp_primary1,
        filename = 'c:\data\imoltp_data1.mdf')
    LOG ON (
        name = imoltp_log,
        filename = 'c:\data\imoltp_log.ldf');
    GO  
  
ALTER DATABASE imoltp
    ADD FILE (
        name = imoltp_primary2,
        filename = 'c:\data\imoltp_data2.ndf');
GO  
  
ALTER DATABASE imoltp
    ADD FILEGROUP imoltp_secondary;

ALTER DATABASE imoltp
    ADD FILE (
        name = imoltp_secondary,
        filename = 'c:\data\imoltp_secondary.ndf')
            TO FILEGROUP imoltp_secondary;
GO  
  
ALTER DATABASE imoltp
    ADD FILEGROUP imoltp_mod
    CONTAINS MEMORY_OPTIMIZED_DATA;

ALTER DATABASE imoltp
    ADD FILE (
        name = 'imoltp_mod1',
        filename = 'c:\data\imoltp_mod1')
            TO FILEGROUP imoltp_mod;

ALTER DATABASE imoltp
    ADD FILE (
        name = 'imoltp_mod2',
        filename = 'c:\data\imoltp_mod2')
            TO FILEGROUP imoltp_mod;
GO  

Cadangan

Sampel ini menunjukkan cara mencadangkan grup file utama dan grup file yang dioptimalkan memori. Anda harus menentukan grup file primer dan memori yang dioptimalkan bersama-sama.

BACKUP database imoltp
    filegroup = 'primary',
    filegroup = 'imoltp_mod'
    to disk = 'c:\data\imoltp.dmp'
    with init;

Sampel berikut menunjukkan bahwa cadangan grup file selain grup file utama, dan yang dioptimalkan memori, berfungsi mirip dengan database tanpa tabel yang dioptimalkan memori. Perintah berikut mencadangkan grup file sekunder

BACKUP database imoltp
    filegroup = 'imoltp_secondary'
    to disk = 'c:\data\imoltp_secondary.dmp'
    with init;

Pulihkan

Sampel berikut menunjukkan cara memulihkan grup file utama dan grup file yang dioptimalkan memori bersama-sama.

RESTORE database imoltp
    filegroup = 'primary',
    filegroup = 'imoltp_mod'
    from disk = 'c:\data\imoltp.dmp'
    with
        partial,
        norecovery;

-- Restore the transaction log.

RESTORE LOG [imoltp]
    FROM DISK = N'c:\data\imoltp_log.dmp'
    WITH
        FILE = 1,
        NOUNLOAD,
        STATS = 10;
GO

Sampel berikutnya menunjukkan bahwa memulihkan grup file selain grup file utama dan yang dioptimalkan memori berfungsi mirip dengan database tanpa tabel yang dioptimalkan memori

RESTORE DATABASE [imoltp]
    FILE = N'imoltp_secondary'
    FROM DISK = N'c:\data\imoltp_secondary.dmp'
    WITH
        FILE = 1,
        RECOVERY,
        NOUNLOAD,
        STATS = 10;
GO

Lihat Juga

Pencadangan, Pemulihan, dan Pemulihan Tabel yang Dioptimalkan Memori