全部产品
Search
文档中心

Elastic Compute Service:Praktik terbaik untuk membuat snapshot konsisten aplikasi untuk instance Windows di mana SQL Server diterapkan

更新时间:Jul 02, 2025

Snapshot konsisten aplikasi memastikan integritas dan konsistensi data dengan menangguhkan sementara penulisan data ke aplikasi selama pembuatan snapshot. Menggunakan snapshot ini membantu mengurangi risiko korupsi atau kehilangan data dan memastikan aplikasi seperti SQL Server dapat berfungsi sesuai harapan setelah pemulihan. Dokumen ini menjelaskan cara memverifikasi penggunaan snapshot konsisten aplikasi untuk memulihkan data pada instance Windows Elastic Compute Service (ECS). Contoh ini menggunakan Windows Server 2019 dan Microsoft SQL Server 2019 (64-bit).

Prasyarat

  • Disk yang terpasang ke instance ECS adalah Enterprise SSD (ESSD) dengan multi-attach dinonaktifkan.

  • Instance ECS harus dalam status Running. Cloud Assistant juga harus dalam status Normal pada instance tersebut. Untuk informasi lebih lanjut tentang cara memeriksa status Cloud Assistant, lihat Lihat Status Cloud Assistant dan Tangani Anomali.

  • Microsoft SQL Server harus diinstal pada instance ECS.

  • Peran RAM harus dilampirkan ke instance ECS, serta kebijakan kustom yang mencakup izin snapshot konsisten aplikasi. Untuk detail lebih lanjut, lihat Buat Peran RAM Instance dan Lampirkan Peran RAM ke Instance ECS.

    Catatan

    Untuk membuat snapshot konsisten aplikasi, Anda perlu memanggil Cloud Assistant untuk mengakses instance ECS dan menjalankan perintah. Sebelumnya, pastikan Cloud Assistant memiliki izin yang diperlukan melalui peran RAM.

    • Konfigurasikan peran RAM kustom, seperti AppSnapshotRoleName.

    • Lampirkan kebijakan kustom ke peran RAM. Contoh kode berikut menunjukkan kebijakan kustom yang memberikan izin kepada peran RAM untuk menanyakan snapshot, membuat snapshot, menambahkan tag, dan menanyakan informasi disk.

      {
          "Version": "1",
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "ecs:DescribeSnapshot*",
                      "ecs:CreateSnapshot*",
                      "ecs:TagResources",
                      "ecs:DescribeDisks"
                  ],
                  "Resource": [
                      "*"
                  ],
                  "Condition": {}
              }
          ]
      }

Alur Kerja

Praktik ini bertujuan untuk memverifikasi pembuatan snapshot konsisten aplikasi guna memastikan database tetap dalam keadaan saat snapshot dibuat, sehingga menjamin konsistensi aplikasi. Gambar berikut mengilustrasikan alur kerja.

  1. Langkah 1: Siapkan Lingkungan Verifikasi Database

    Buat tabel database dan picu prosedur penyimpanan untuk mensimulasikan operasi penulisan data guna memverifikasi snapshot konsisten aplikasi nanti.

  2. Langkah 2: Buat Snapshot Konsisten Aplikasi di Konsol ECS

    Buat snapshot konsisten aplikasi untuk instance Windows tempat database SQL Server berada di konsol ECS. Saat membuat snapshot, operasi penulisan pada database sementara dihentikan untuk memastikan konsistensi data.

  3. Langkah 3: Periksa Apakah Snapshot Konsisten Aplikasi Telah Dibuat

    Periksa hasil eksekusi perintah Cloud Assistant untuk memastikan snapshot konsisten aplikasi telah dibuat, serta titik waktu saat operasi penulisan ditangguhkan dan dilanjutkan pada database.

  4. Langkah 4: Periksa Apakah Snapshot Konsisten Aplikasi Dapat Digunakan untuk Memulihkan Data Sesuai Harapan

    Gunakan snapshot konsisten aplikasi untuk memulihkan data. Bandingkan waktu terakhir data ditulis ke database SQL Server dengan waktu saat operasi penulisan ditangguhkan untuk memastikan pemulihan sesuai harapan.

    • Jika waktu penulisan terakhir data SQL Server lebih awal dari waktu penangguhan database, tidak ada operasi penulisan yang dilakukan selama periode penangguhan. Waktu penulisan terakhir data setelah pemulihan mencerminkan keadaan sebelum penangguhan. Database tetap dalam keadaan saat snapshot dibuat.

    • Jika waktu penulisan terakhir data SQL Server lebih lambat atau sama dengan waktu penangguhan, operasi penulisan masih berlangsung selama periode penangguhan, dan efek snapshot konsisten aplikasi tidak sesuai harapan.

Prosedur

Langkah 1: Siapkan lingkungan verifikasi database

  1. Hubungkan ke instance Windows.

  2. Hubungkan ke SQL Server.

    1. Di pojok kiri bawah, klik ikon Pencarian, masukkan ssms di kotak pencarian, lalu tekan tombol Enter.

    2. Klik Microsoft SQL Server Management Studio 18.

    3. Di kotak dialog Connect to Server, konfigurasikan informasi koneksi server dan klik Connect.

  3. Di Microsoft SQL Server Management Studio 18, buat database uji bernama AdventureWorks.

    1. Klik New Query.

    2. Di jendela query yang muncul, masukkan pernyataan SQL berikut:

      CREATE DATABASE AdventureWorks;
    3. Klik kanan jendela query dan pilih Execute.

  4. Di Microsoft SQL Server Management Studio 18, buat tabel uji bernama PointInTime.

    1. Klik New Query.

    2. Di jendela query yang muncul, masukkan pernyataan SQL berikut:

      USE AdventureWorks
      GO
      IF NOT EXISTS (SELECT name FROM sysobjects WHERE name = 'PointInTime' AND TYPE ='U')
      CREATE TABLE PointInTime (PIT datetime)
      WHILE ( 1 = 1 )
      BEGIN
          INSERT PointInTime SELECT GETDATE()
          WAITFOR DELAY '00:00:001'
      END
    3. Klik kanan jendela query dan pilih Execute.

  5. Di pohon direktori di sebelah kiri, lihat database dan tabel yang telah dibuat.

Langkah 2: Buat snapshot konsisten aplikasi di konsol ECS

    Buka ECS Console - Snapshot-consistent Groups.

  1. Di bilah navigasi atas, pilih wilayah dan grup sumber daya dari sumber daya yang ingin Anda kelola. Wilayah

  2. Di tab Snapshot-consistent Groups, klik Create Snapshot-consistent Group.

  3. Di kotak dialog Create Snapshot, konfigurasikan parameter yang dijelaskan dalam tabel berikut.

    1. Secara default, parameter Resource Type disetel ke Instance.

    2. Pilih instance Windows dari daftar drop-down Pilih Instance. Kemudian, di bagian Pilih Disk Cloud, pilih ESSD tempat Anda ingin membuat snapshot dari instance tersebut.

    3. Perluas Advanced Settings, pilih Enable Application-consistent Snapshot, lalu pilih Contain Writers by Default.

      Catatan

      Writers adalah komponen utama dalam arsitektur Volume Shadow Copy Service (VSS). Sistem operasi Windows menyediakan Writers untuk memastikan konsistensi data selama pencadangan. Untuk informasi lebih lanjut, lihat Volume Shadow Copy Service.

  4. Klik OK.

    Setelah grup konsistensi snapshot dibuat, pesan yang berisi ID perintah Cloud Assistant dan ID tugas akan ditampilkan. Anda dapat memeriksa apakah snapshot konsisten aplikasi telah dibuat berdasarkan ID tugas.

Langkah 3: Periksa apakah snapshot konsisten aplikasi telah dibuat

  1. Klik ID tugas di tab Hasil Eksekusi Perintah halaman ECS Cloud Assistant untuk melihat hasil eksekusi perintah.

    image

    Jika snapshot konsisten aplikasi telah dibuat, nilai pengembalian ExitCode adalah 0. Output perintah menunjukkan bahwa snapshot konsisten aplikasi telah dibuat dan berisi ID grup konsistensi snapshot, seperti yang ditunjukkan pada gambar sebelumnya.

    Catatan

    Jika nilai pengembalian ExitCode bukan 0, terjadi kesalahan. Lakukan pemecahan masalah berdasarkan kode kesalahan yang dikembalikan di kolom ExitCode. Untuk informasi lebih lanjut, lihat bagian Kode Kesalahan dari topik "Buat Snapshot Konsisten Aplikasi".

  2. Di output perintah, lihat informasi tentang proses pembuatan grup konsistensi snapshot untuk memastikan bahwa snapshot yang dibuat memenuhi persyaratan integritas dan ketersediaan data.

    • Periksa apakah komponen konsistensi yang diperlukan, seperti COM+ dan VSS, telah diinstal.

      image

    • Pastikan sistem dengan benar mengidentifikasi dan memuat semua volume logis yang perlu dicadangkan.

      image

    • Periksa apakah database yang sesuai di SQL Server secara otomatis ditambahkan untuk memastikan integritas dan konsistensi database.

      image

    • Output perintah berikut menunjukkan bahwa snapshot dibuat pada 2025-03-03 13:53:30. Data snapshot ditangkap pada titik waktu ini dan operasi penulisan database ditangguhkan.

      image

  3. Lihat grup konsistensi snapshot dan snapshot disk yang telah dibuat.

      Buka ECS Console - Snapshot-consistent Groups.

    1. Di tab Snapshot-consistent Groups, temukan grup konsistensi snapshot yang Anda buat dan klik ID grup konsistensi snapshot untuk melihat detail snapshot.

    2. Di bagian Snapshot Information, periksa apakah snapshot konsisten aplikasi telah dibuat berdasarkan tag.

      Jika snapshot konsisten aplikasi dibuat, tag APPConsistent:True akan muncul di kolom Tag yang sesuai dengan snapshot, seperti yang ditunjukkan pada gambar berikut.

      image

  4. Hubungkan ke database SQL Server dan lihat titik waktu saat operasi penulisan ditangguhkan.

    1. Hubungkan ke instance Windows.

      Untuk informasi lebih lanjut, lihat Gunakan Workbench untuk Menghubungkan ke Instance Windows melalui RDP.

    2. Gunakan Microsoft SQL Server Management Studio 18 untuk menghubungkan ke database SQL Server.

    3. Klik New Query.

    4. Di jendela query yang muncul, masukkan pernyataan SQL berikut:

      USE AdventureWorks
      select * from PointInTime
      GO
    5. Klik kanan jendela query dan pilih Execute.

    6. Di hasil query, lihat periode saat operasi penulisan pada database ditangguhkan.

      Hasil query menunjukkan bahwa tidak ada data yang ditambahkan selama periode dari 2025-03-03 13:53:30 hingga 2025-03-03 13:53:33, yang menunjukkan bahwa operasi penulisan pada database ditangguhkan pada 13:53:30 dan dilanjutkan pada 13:53:33.

      image

Langkah 4: Periksa apakah snapshot konsisten aplikasi dapat digunakan untuk memulihkan data sesuai harapan

  1. Kembalikan disk menggunakan grup konsistensi snapshot.

    Untuk informasi lebih lanjut, lihat Kembalikan Disk Menggunakan Grup Konsistensi Snapshot.

  2. Masuk ke SQL Server dan tanyakan isi tabel PointInTime.

    1. Hubungkan ke instance Windows.

      Untuk informasi lebih lanjut, lihat Gunakan Workbench untuk Menghubungkan ke Instance Windows melalui RDP.

    2. Gunakan Microsoft SQL Server Management Studio 18 untuk menghubungkan ke database SQL Server.

    3. Klik New Query.

    4. Di jendela query yang muncul, masukkan pernyataan SQL berikut:

      USE AdventureWorks
      select * from PointInTime
      GO
    5. Klik kanan jendela query dan pilih Execute.

    6. Di hasil query, temukan titik waktu saat data terakhir kali ditulis ke database SQL Server setelah data dipulihkan.

      Hasil query menunjukkan bahwa titik waktu saat catatan data terakhir ditambahkan ke database adalah 2025-03-03 13:53:29, yang lebih awal dari titik waktu 2025-03-03 13:53:30 penangguhan yang ditanyakan di Langkah 3. Ini memverifikasi bahwa snapshot konsisten aplikasi dapat mencadangkan data untuk SQL Server sesuai harapan.

      image