1. Memahami Always On Availability Groups
1.1 Apa Itu dan Bagaimana Cara Kerjanya
Always On Availability Groups (AG) adalah sebuah SQL Server Enterprise ketersediaan tinggi dan solusi pemulihan bencana yang beroperasi pada tingkat basis data. Grup ketersediaan mengelompokkan satu atau lebih basis data pengguna ke dalam satu unit failover dan mereplikasikannya ke hingga delapan replika sekunder melalui pengiriman log transaksi berkelanjutan. Ketika replika utama gagal, replika sekunder sinkron yang ditunjuk secara otomatis mengambil alih, memulihkan akses dalam hitungan detik tanpa penyimpanan bersama atau intervensi manual.
1.2 Grup Ketersediaan Always On vs. Instance Klaster Failover
SQL Server Always On mencakup dua teknologi berbeda: Availability Groups (AG) dan Failover Cluster Instances (FCI):
| Grup Ketersediaan Selalu Aktif | Instans Klaster Failover Selalu Aktif | |
|---|---|---|
| Cakupan failover | Tingkat basis data | Tingkat instance (semua basis data melakukan failover secara bersamaan) |
| Replikasi data | Replikasi berbasis log ke setiap sekunder. | Tidak ada — semua node berbagi penyimpanan yang sama |
| Penyimpanan bersama | Tidak diperlukan | Diperlukan (Storage Area Network (SAN), iSCSI, S2D, atau SMB) |
| Sekunder yang mudah dibaca | Ya | Tidak |
| Pemulihan bencana | Terintegrasi (replika asinkron di seluruh situs) | Tidak terintegrasi tanpa dipasangkan dengan AG. |
Kapan harus menggunakan masing-masing: Gunakan FCI jika Anda memerlukan failover tingkat instance dan sudah memiliki infrastruktur penyimpanan bersama. Gunakan AG jika Anda memerlukan granularitas tingkat basis data, secondary yang dapat dibaca, atau pemulihan bencana. Untuk most Untuk perlindungan lengkap, gabungkan keduanya: jalankan setiap replika sebagai node FCI dan hubungkan keduanya dalam sebuah AG.
1.3 Manfaat dan Keterbatasan
Manfaat:
- Failover otomatis dengan Recovery Time Objective (RTO) mendekati nol untuk replika sinkron;
- Tidak ada kehilangan data (Recovery Point Objective (RPO) = 0) dalam mode komit sinkron;
- tidak memerlukan penyimpanan bersama — setiap replika menggunakan penyimpanan lokal independen;
- Secondary yang mudah dibaca mengurangi beban kerja pelaporan dan pencadangan dari primary;
- Mendukung ketersediaan tinggi (HA) lokal dan pemulihan bencana (DR) lintas lokasi dalam satu konfigurasi.
Keterbatasan:
- Membutuhkan Windows Server Failover Clustering pada semua replika;
- Edisi Enterprise untuk fitur lengkap (Edisi Standar mendukung Basic AG dengan batasan yang signifikan);
- Mode synchronous-commit menambahkan latensi pada operasi penulisan yang sebanding dengan waktu tempuh bolak-balik jaringan;
- Login, tugas SQL Agent, dan server tertaut tidak disinkronkan secara otomatis. SQL Server Tahun 2019 dan sebelumnya (diselesaikan pada SQL Server (Tahun 2022 berisi kelompok ketersediaan).
2. Arsitektur Always On Availability Groups
2.1 Komponen dan Konsep Inti
2.1.1 Basis Data Ketersediaan
Basis data ketersediaan adalah basis data pengguna yang berpartisipasi dalam grup ketersediaan. Basis data ini harus memenuhi persyaratan khusus: basis data tersebut harus menggunakan model pemulihan penuh, memiliki cadangan penuh, dan ada pada replika utama sebelum ditambahkan ke grup ketersediaan.
Ketika sebuah basis data bergabung dengan grup ketersediaan, basis data tersebut menjadi bagian dari kumpulan yang tersinkronisasi yang melakukan failover secara bersamaan. Semua basis data dalam grup ketersediaan berbagi status failover yang sama, artinya jika replika utama gagal, semua basis data akan melakukan failover ke replika sekunder yang sama secara bersamaan. Hal ini memastikan konsistensi untuk aplikasi yang bergantung pada beberapa basis data terkait.
2.1.2 Ketersediaan Replika
Replika ketersediaan adalah SQL Server contoh-contoh yang host salinan basis data ketersediaan. Setiap replika menyimpan salinan fisik basis datanya sendiri, yang disinkronkan melalui pengiriman catatan log transaksi. Sebuah grup ketersediaan dapat berisi hingga sembilan replika: satu replika utama dan hingga delapan replika sekunder.
2.1.3 Replika Primer
Replika utama hostIni adalah salinan baca-tulis dari basis data ketersediaan. Semua modifikasi data (INSERT, UPDATE, DELETE) terjadi pada replika utama. Aplikasi klien terhubung ke replika utama untuk semua operasi penulisan dan, secara default, untuk operasi pembacaan juga.
2.1.4 Replika Sekunder
Replika sekunder host Salinan basis data ketersediaan yang hanya dapat dibaca, dipelihara melalui penerapan berkelanjutan catatan log transaksi yang diterima dari replika utama. Setiap replika sekunder menerima, memperkuat, dan menerapkan catatan log untuk menjaga agar salinan basis datanya tetap sinkron dengan yang utama.
2.2 Mode Ketersediaan
2.2.1 Mode Komit Sinkron
Mode komit sinkron memberikan perlindungan tanpa kehilangan data dengan mengharuskan replika utama menunggu konfirmasi bahwa catatan log transaksi telah diperkuat pada replika sekunder sebelum melakukan komit transaksi. Mode ini sangat penting untuk konfigurasi ketersediaan tinggi di mana kehilangan data tidak dapat diterima.
2.2.2 Mode Komit Asinkron
Mode commit asinkron memprioritaskan kinerja replika utama dengan memungkinkan transaksi untuk di-commit tanpa menunggu replika sekunder untuk mengakui pengerasan log. Mode ini cocok untuk replika pemulihan bencana atau ketika latensi jaringan membuat commit sinkron tidak praktis.
Konsekuensinya adalah potensi kehilangan data selama proses failover. Jika replika utama gagal, beberapa transaksi yang telah dikomit mungkin belum mencapai replika sekunder. Jumlah potensi kehilangan data bergantung pada bandwidth jaringan, kinerja replika sekunder, dan waktu kegagalan. Organisasi harus menerima risiko ini saat menggunakan mode asinkron.
2.3 Jenis Failover
2.3.1 Failover Otomatis
Failover otomatis memungkinkan grup ketersediaan untuk mendeteksi kegagalan replika utama dan secara otomatis mempromosikan replika sekunder menjadi replika utama tanpa intervensi administrator. Kemampuan ini meminimalkan RTO (Recovery Time Objective) dengan menghilangkan kebutuhan akan respons manual terhadap kegagalan.
Failover otomatis memerlukan mode synchronous-commit untuk memastikan tidak ada kehilangan data. Saat diaktifkan, grup ketersediaan terus memantau kesehatan replika utama. Jika replika utama tidak responsif atau gagal, Windows Server Failover Cluster akan memulai failover otomatis ke replika sekunder yang ditunjuk.
2.3.2 Failover Manual
Failover manual memungkinkan administrator untuk secara sengaja mengalihkan peran replika utama ke replika sekunder, biasanya untuk keperluan pemeliharaan atau pengujian yang direncanakan. Tidak seperti failover otomatis, failover manual memerlukan tindakan eksplisit dari administrator untuk memulainya.
Failover manual tanpa kehilangan data tersedia untuk replika synchronous-commit. Administrator memulai failover melalui SQL Server Management Studio, Transact-SQL, atau PowerShell. Replika utama menyelesaikan pemrosesan transaksi saat ini, mengirimkan semua catatan log yang tersisa ke tarmendapatkan peran sekunder, dan menunggu konfirmasi sebelum mentransfer peran utama.
Failover manual juga dapat terjadi dengan replika komit asinkron, tetapi ini memerlukan failover paksa dengan potensi kehilangan data. Administrator sebaiknya hanya menggunakan failover manual paksa selama skenario bencana sebenarnya ketika replika utama tidak tersedia dan kehilangan data dapat diterima dibandingkan dengan waktu henti yang berkepanjangan.
2.3.3 Failover Paksa
Failover paksa memungkinkan failover ke replika sekunder asinkron atau ke replika sekunder yang tidak sepenuhnya tersinkronisasi, dengan pengakuan eksplisit atas potensi kehilangan data. Opsi ini berfungsi sebagai upaya terakhir ketika replika utama tidak tersedia dan tidak ada replika sekunder yang tersinkronisasi.
2.4 Sinkronisasi Data
2.4.1 Cara Kerja Sinkronisasi Data
Sinkronisasi data di Always On Availability Group terjadi melalui pengiriman catatan log transaksi secara terus-menerus dari replika utama ke semua replika sekunder. Sinkronisasi berbasis log ini memastikan konsistensi sekaligus memungkinkan penyimpanan independen untuk setiap replika.
2.4.2 Catatan Log Transaksi dan Pengerasan Sistem
Pengerasan log transaksi adalah langkah penting di mana catatan log ditulis ke penyimpanan permanen pada replika sekunder. Pengerasan memastikan bahwa catatan log tetap ada meskipun terjadi kegagalan replika sekunder dan dapat diputar ulang selama pemulihan.
2.5 Skala Baca dan Replika Sekunder yang Mudah Dibaca
2.5.1 Mengalihkan Beban Kerja Baca Saja
Replika sekunder yang dapat dibaca memungkinkan organisasi untuk mengurangi beban kerja baca intensif dari replika utama, sehingga meningkatkan kinerja sistem secara keseluruhan dan pemanfaatan sumber daya. Kemampuan skala baca ini adalah salah satu keunggulan utama grup ketersediaan dibandingkan solusi ketersediaan tinggi yang lebih lama.
Organisasi harus mempertimbangkan persyaratan beban kerja hanya baca saat merancang konfigurasi grup ketersediaan. Beberapa server sekunder yang dapat dibaca dapat mendistribusikan beban pelaporan ke beberapa server. Daftar perutean hanya baca menentukan urutan server sekunder menerima koneksi dengan tujuan baca, sehingga memungkinkan strategi penyeimbangan beban.
2.5.2 Operasi Pencadangan pada Replika Sekunder
Menjalankan pencadangan pada replika sekunder mengurangi beban input/output (I/O) dan Unit Pemrosesan Pusat (CPU) pada replika utama, sehingga memungkinkan replika utama untuk fokus pada beban kerja transaksional. Kemampuan ini membantu organisasi memenuhi persyaratan pencadangan tanpa memengaruhi kinerja produksi.
SQL Server Mendukung pencadangan basis data penuh, pencadangan diferensial, dan pencadangan log transaksi pada replika sekunder. Preferensi pencadangan dapat dikonfigurasi untuk memprioritaskan replika sekunder, memprioritaskan replika utama, hanya replika sekunder, atau replika mana pun. Sistem pencadangan secara otomatis memilih replika yang sesuai berdasarkan preferensi ini dan ketersediaan saat ini.
Untuk detail lebih lanjut tentang SQL Server cadangan, lihat kami panduan komprehensif.
2.6 Pendengar Grup Ketersediaan
2.6.1 Apa itu Pendengar?
Listener grup ketersediaan adalah nama jaringan virtual (VNN) dan alamat IP yang digunakan aplikasi klien untuk terhubung ke basis data grup ketersediaan. Listener secara otomatis mengarahkan koneksi ke replika utama saat ini, sehingga menghilangkan kebutuhan aplikasi untuk melacak server mana yang saat ini menjadi utama.
2.6.2 Perutean Koneksi Klien
Pengalihan koneksi klien melalui listener mendukung tujuan koneksi baca-tulis dan baca-saja. Listener memeriksa permintaan koneksi dan mengarahkannya ke replika yang sesuai berdasarkan tujuan aplikasi.
3. Prasyarat dan Persyaratan
3.1 Klaster Failover Windows Server untuk Grup Ketersediaan
3.1.1 Dasar-Dasar Failover Clustering Windows Server
Windows Server Failover Clustering (WSFC) menyediakan fondasi untuk Always On Availability Groups dengan mengelola keanggotaan klaster, pemantauan kesehatan, dan orkestrasi failover. Tidak seperti Failover Cluster Instances, availability group hanya menggunakan WSFC untuk koordinasi klaster, bukan untuk manajemen penyimpanan bersama.
Masing-masing SQL Server Instans yang berpartisipasi dalam grup ketersediaan harus berupa node dalam klaster WSFC. Klaster mengelola pemungutan suara kuorum, deteksi kesehatan node, dan status sumber daya grup ketersediaan. Ketika replika utama gagal, WSFC mengoordinasikan proses failover dan memperbarui sumber daya klaster untuk mencerminkan replika utama yang baru.
3.1.2 Konfigurasi Kuorum Klaster
Kuorum klaster menentukan node mana yang dapat beroperasi ketika terjadi masalah konektivitas jaringan, mencegah skenario split-brain di mana beberapa node secara independen mengklaim sebagai node utama. Konfigurasi kuorum mendefinisikan apa yang dianggap sebagai suara mayoritas untuk keputusan klaster.
Beberapa mode kuorum tersedia untuk grup ketersediaan:
- Node Majority hanya menggunakan suara node klaster dan bekerja dengan baik untuk klaster dengan jumlah node ganjil.
- Node and File Share Majority menambahkan pemungutan suara saksi berbagi file, yang cocok untuk klaster dengan jumlah node genap.
- Node and Disk Majority menggunakan disk witness tetapi kurang umum untuk availability group karena penyimpanan bersama tidak diperlukan.
3.1.3 Klasterisasi Multi-Subnet
Pengelompokan multi-subnet memungkinkan replika grup ketersediaan untuk mencakup subnet jaringan yang berbeda, mendukung penyebaran yang terdistribusi secara geografis di seluruh pusat data. Kemampuan ini sangat penting untuk konfigurasi pemulihan bencana di mana replika berada di lokasi yang terpisah.
3.2 SQL Server Persyaratan Edisi
3.2.1 Fitur Edisi Perusahaan
SQL Server Edisi Enterprise menyediakan fungsionalitas grup ketersediaan penuh tanpa batasan. Edisi Enterprise mendukung hingga delapan replika sekunder, sekunder yang dapat dibaca, seeding otomatis, grup ketersediaan terdistribusi, dan semua fitur canggih.
3.2.2 Fitur Edisi Standar (Grup Ketersediaan Dasar)
SQL Server Edisi Standar 2016 dan versi yang lebih baru mendukung Basic Availability Group (BAG) dengan keterbatasan yang signifikan. Basic Availability Group menyediakan fungsionalitas inti ketersediaan tinggi dengan biaya yang lebih rendah.ost, cocok untuk organisasi dengan kebutuhan yang lebih sederhana.
4. Mengkonfigurasi Always On Availability Groups
4.1 Mempersiapkan Lingkungan
Sebelum membuat grup ketersediaan, lingkungan harus dipersiapkan dengan benar termasuk akun Active Directory, konfigurasi server, dan infrastruktur jaringan yang sudah tersedia.
4.1.1 Pengaturan Pengontrol Domain
Pengontrol domain Active Directory harus dikonfigurasi untuk mendukung klaster grup ketersediaan dan SQL Server akun layanan.
- Masuk ke pengendali domain menggunakan kredensial administrator domain.
- Open Server Manager dan arahkan ke Tools -> Pengguna Direktori Aktif dan Komputer.
- Buat unit organisasi untuk SQL Server objek jika salah satunya belum ada.
- Verifikasi bahwa objek komputer untuk semua node klaster ada di Active Directory.
- Pastikan layanan Domain Name System (DNS) dikonfigurasi dengan benar dan semua nama server dapat diresolusi dengan tepat.
4.1.2 Membuat Akun Layanan
Buat akun layanan Active Directory khusus untuk SQL Server layanan pada setiap node.
- Open Pengguna Direktori Aktif dan Komputer pada pengendali domain.
- Klik kanan pada unit organisasi yang sesuai dan pilih New -> Pengguna.
- Masukkan nama akun layanan (misalnya, svc_SQLServer) dan atur Nama pengguna untuk masuk.
- Klik Selanjutnya dan masukkan kata sandi yang kuat.
- Pilih Pengguna tidak dapat mengubah kata sandi. dan Kata sandi tidak pernah kedaluwarsa.
- Klik Selanjutnya lalu Finish untuk membuat akun.
- Ulangi langkah ini untuk akun layanan tambahan yang dibutuhkan (SQL Server Agen, SSRS, dll.).
4.1.3 Mengonfigurasi Izin Administrator
Akun layanan dan akun yang digunakan untuk konfigurasi SQL Server Harus memiliki izin yang sesuai pada semua node klaster.
- Masuk ke setiap server node klaster.
- Open Manajemen komputer dari Start menu atau Pengelola Server.
- Lihat lebih lanjut Pengguna dan Grup Lokal dan pilih Grup.
- Klik kanan administrator dan pilih Properties.
- Klik Add lalu masukkan nama akun layanan.
- Klik Periksa Nama untuk memvalidasi akun, lalu klik OK.
- Klik OK untuk menutup dialog Properti Administrator.
- Ulangi langkah ini pada semua node klaster.
4.2 Menginstal dan Mengkonfigurasi WSFC
Windows Server Failover Clustering harus diinstal dan dikonfigurasi pada semua node sebelum mengaktifkan Always On Availability Groups.
4.2.1 Menginstal Fitur Failover Clustering
Instal fitur Failover Clustering pada setiap server yang akan berpartisipasi dalam grup ketersediaan.
- Open Server Manager pada node klaster pertama.
- Klik Mengelola -> Tambahkan Peran dan Fitur.
- Klik Selanjutnya melalui layar pengantar.
- Pilih Instalasi berbasis peran atau berbasis fitur dan klik Selanjutnya.
- Pilih server lokal dan klik Selanjutnya.
- Lewati layar Peran dan klik Selanjutnya.
- Pada layar Fitur, pilih Pengelompokan failover.
- Klik Tambah Fitur saat diminta untuk menyertakan alat manajemen.
- Klik Selanjutnya lalu Install.
- Tunggu hingga instalasi selesai lalu klik. Penyelesaian.
- Ulangi langkah ini pada semua server yang akan berpartisipasi dalam klaster.
4.2.2 Membuat Klaster Failover
Setelah menginstal fitur Failover Clustering pada semua node, buat cluster dari salah satu node.
- Open Manajer Klaster Failover dari Server Manager -> Tools.
- Klik Buat Klaster di panel Tindakan.
- Klik Selanjutnya pada halaman Sebelum Anda Mulai.
- Klik Browse dan tambahkan semua server yang akan menjadi node klaster.
- Klik Selanjutnya setelah menambahkan semua node.
- Meninggalkan Jalankan semua pengujian (disarankan) pilih dan klik Selanjutnya.
- Tinjau hasil uji validasi dan atasi kesalahan atau peringatan apa pun.
- Klik Finish setelah validasi berhasil diselesaikan.
- Masukkan nama untuk klaster dan alamat IP.
- Hapus tanda centang Tambahkan semua penyimpanan yang memenuhi syarat ke klaster. karena penyimpanan bersama tidak diperlukan.
- Klik Selanjutnya dan tinjau konfirmasinya.
- Klik Finish untuk membuat klaster.
4.2.3 Memvalidasi Konfigurasi Klaster
Validasi konfigurasi klaster untuk memastikan semua node dapat berkomunikasi dengan benar dan klaster beroperasi dengan tepat.
- In Manajer Klaster Failover, klik kanan nama cluster.
- Pilih Validasi Klaster dari menu.
- Klik Selanjutnya pada halaman Sebelum Anda Mulai.
- Pilih Jalankan semua pengujian (disarankan) dan klik Selanjutnya.
- Klik Selanjutnya untuk memulai pengujian validasi.
- Periksa laporan validasi setelah pengujian selesai.
- Atasi setiap kegagalan atau peringatan yang teridentifikasi dalam laporan.
- Klik Finish untuk menutup wizard.
TIDAK PERNAH Menginstal SQL Server untuk Grup Ketersediaan
Install SQL Server pada setiap node yang akan berpartisipasi dalam grup ketersediaan menggunakan opsi instalasi mandiri.
- Jalankan SQL Server media instalasi pada node pertama.
- Pilih New SQL Server instalasi mandiri.
- Masukkan kunci produk atau pilih edisi evaluasi.
- Terima persyaratan lisensi dan klik Selanjutnya.
- Lakukan pengecekan prasyarat dan atasi masalah apa pun.
- Pada halaman Pemilihan Fitur, pilih Layanan Mesin Basis Data.
- Konfigurasikan nama instance (gunakan nama instance yang sama di semua node).
- Pada halaman Konfigurasi Server, tentukan kredensial akun layanan.
- Konfigurasi layanan starjenis tup sebagai secara otomatis.
- Pada halaman Konfigurasi Mesin Basis Data, pilih mode otentikasi.
- Tambahkan akun administrator.
- Konfigurasikan direktori data menggunakan jalur yang konsisten di semua node.
- Selesaikan instalasi dan verifikasi keberhasilannya.
- Ulangi instalasi pada semua node cluster lainnya dengan pengaturan yang identik.
4.4 Mengaktifkan Fitur Always On Availability Groups
Setelah menginstal SQL Server Pada semua node, aktifkan fitur Always On Availability Groups pada setiap instance.
4.4.1 Mengaktifkan melalui SQL Server Manajer Konfigurasi
penggunaan SQL Server Configuration Manager untuk mengaktifkan Always On Availability Groups melalui antarmuka grafis.
- Open SQL Server Manajer Konfigurasi pada node pertama.
- Lihat lebih lanjut SQL Server Layanan di sebelah kiri.
- Klik kanan SQL Server contoh dan pilih Properties.
- klik Ketersediaan Tinggi Selalu Aktif Tab.
- Memeriksa Aktifkan AlwaysOn Availability Groups.
- Verifikasi apakah nama klaster failover Windows sudah benar.
- Klik OK Untuk menyimpan perubahan
- Klik OK atas peringatan bahwa layanan tersebut harus dihidupkan kembalitarted.
- Klik kanan SQL Server layanan dan pilih Soaltart.
- Tunggu layanannya untuk restarberhasil.
- Ulangi langkah ini pada semua node klaster.
4.4.2 Mengaktifkan melalui PowerShell
PowerShell menyediakan metode skrip untuk mengaktifkan Always On Availability Group di beberapa node.
- Buka PowerShell sebagai Administrator pada node pertama.
- Impor SQL Server Modul PowerShell:
Import-Module SQLPS -DisableNameChecking
- Aktifkan Always On Availability Groups:
Enable-SqlAlwaysOn -ServerInstance "ServerName\InstanceName" -Force
- Layanan akan secara otomatis dimulai ulangtart saat menggunakan parameter Force.
- Pastikan fitur tersebut diaktifkan:
Get-ItemProperty "SQLSERVER:\SQL\ServerName\InstanceName" | Select-Object IsHadrEnabled
- Ulangi langkah ini untuk setiap node klaster, dengan mengganti nama server dan instance yang sesuai.
4.4.3 Memverifikasi Apakah Fitur Telah Diaktifkan
Pastikan Always On Availability Groups diaktifkan pada semua instance sebelum melanjutkan konfigurasi.
- Terhubung ke masing-masing SQL Server contoh penggunaan SQL Server Studio Manajemen.
- Buka jendela kueri baru dan jalankan:
SELECT SERVERPROPERTY('IsHadrEnabled') - Pastikan hasilnya adalah 1 (diaktifkan).
- Periksa apakah SQL Server Instansi tersebut muncul di Failover Cluster Manager di bawah peran klaster.
- Verifikasi keberadaan endpoint grup ketersediaan dengan menjalankan perintah berikut:
SELECT * FROM sys.endpoints WHERE type_desc = 'DATABASE_MIRRORING'
- Jika titik akhir (endpoint) belum ada, maka akan dibuat selama pembuatan grup ketersediaan (availability group).
4.5 Mempersiapkan Basis Data untuk Grup Ketersediaan
Basis data harus memenuhi persyaratan tertentu sebelum dapat ditambahkan ke grup ketersediaan.
4.5.1 Persyaratan Model Pemulihan Basis Data
Ubah model pemulihan basis data menjadi FULL pada replika utama sebelum menambahkannya ke grup ketersediaan.
- Hubungkan ke replika utama menggunakan SQL Server Studio Manajemen.
- Klik kanan pada basis data dan pilih Properties.
- Pilih Opsi .
- Perubahan Model pemulihan untuk Penuh.
- Klik OK untuk menyimpan kembalian.
- Alternatifnya, gunakan Transact-SQL:
ALTER DATABASE DatabaseName SET RECOVERY FULL;
4.5.2 Melakukan Pencadangan Basis Data Lengkap
Lakukan pencadangan basis data lengkap untuk membangun rantai pencadangan yang diperlukan untuk grup ketersediaan.
- In SQL Server Di Management Studio, klik kanan pada basis data.
- Pilih Tasks -> Back Up.
- Memeriksa Jenis cadangan diatur ke Penuh.
- Pilih tujuan pencadangan atau tambahkan tujuan baru.
- Klik OK untuk melakukan pencadangan.
- Alternatifnya, gunakan Transact-SQL:
BACKUP DATABASE DatabaseName TO DISK = 'C:\Backup\DatabaseName.bak';
4.5.3 Mengambil Cadangan Log Transaksi
Lakukan pencadangan log transaksi untuk memastikan rantai log terbentuk dan meminimalkan waktu inisialisasi.
- In SQL Server Di Management Studio, klik kanan pada basis data.
- Pilih Tasks -> Back Up.
- Perubahan Jenis cadangan untuk Log Transaksi.
- Pilih tujuan pencadangan.
- Klik OK untuk melakukan pencadangan.
- Alternatifnya, gunakan Transact-SQL:
BACKUP LOG DatabaseName TO DISK = 'C:\Backup\DatabaseName.trn';
4.6 Membuat Grup Ketersediaan
Buat grup ketersediaan menggunakan salah satu dari beberapa metode yang tersedia, tergantung pada preferensi dan kebutuhan otomatisasi Anda.
4.6.1 Menggunakan Panduan Grup Ketersediaan Baru
Wizard Pembuatan Grup Ketersediaan Baru menyediakan antarmuka grafis untuk membuat grup ketersediaan.
- In SQL Server Management Studio, sambungkan ke instance yang akan host replika utama.
- Lihat lebih lanjut Ketersediaan Tinggi Selalu Aktif di Object Explorer.
- Klik kanan Grup Ketersediaan dan pilih Panduan Grup Ketersediaan Baru.
- Klik Selanjutnya pada halaman Pendahuluan.
- Masukkan nama untuk grup ketersediaan dan klik. Selanjutnya.
- Pada halaman Pilih Basis Data, pilih basis data yang ingin disertakan.
- Verifikasi bahwa basis data memenuhi semua prasyarat dan klik Selanjutnya.
- Pada halaman Tentukan Replika, klik Tambahkan Replika.
- Hubungkan ke setiap instance replika sekunder.
- Konfigurasikan properti replika untuk setiap instance (mode ketersediaan, mode failover).
- klik Endpoints tab dan tinjau konfigurasi endpoint.
- klik Preferensi Pencadangan tab dan konfigurasikan prioritas pencadangan.
- klik Pendengar tab dan secara opsional membuat pendengar.
- Klik Selanjutnya dan pilih metode sinkronisasi data.
- Tinjau hasil validasi dan atasi masalah apa pun.
- Klik Selanjutnya dan tinjau ringkasannya.
- Klik Finish untuk membuat grup ketersediaan.
- Pantau kemajuan dan verifikasi keberhasilan pembuatan.
4.6.2 Menggunakan Transact-SQL
Buat grup ketersediaan menggunakan Transact-SQL untuk penerapan yang dapat diotomatisasi dan diulang.
- Buat grup ketersediaan pada replika utama:
CREATE AVAILABILITY GROUP AG_Name FOR DATABASE DatabaseName REPLICA ON 'PrimaryServer\Instance' WITH (ENDPOINT_URL = 'TCP://PrimaryServer:5022', AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, FAILOVER_MODE = AUTOMATIC, SECONDARY_ROLE(ALLOW_CONNECTIONS = ALL)), 'SecondaryServer\Instance' WITH (ENDPOINT_URL = 'TCP://SecondaryServer:5022', AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, FAILOVER_MODE = AUTOMATIC, SECONDARY_ROLE(ALLOW_CONNECTIONS = ALL)); - Gabungkan replika sekunder ke grup ketersediaan:
ALTER AVAILABILITY GROUP AG_Name JOIN;
- Gabung ke basis data sekunder:
ALTER DATABASE DatabaseName SET HADR AVAILABILITY GROUP = AG_Name;
4.6.3 Menggunakan PowerShell
PowerShell menyediakan kemampuan scripting untuk pembuatan dan pengelolaan grup ketersediaan.
- Buat objek grup ketersediaan:
$AG = New-SqlAvailabilityGroup -Name "AG_Name" -Path "SQLSERVER:\SQL\PrimaryServer\Instance"
- Tambahkan basis data:
Add-SqlAvailabilityDatabase -Path "SQLSERVER:\SQL\PrimaryServer\Instance\AvailabilityGroups\AG_Name" -Database "DatabaseName"
- Konfigurasikan replika dengan properti yang diinginkan menggunakan cmdlet New-SqlAvailabilityReplica.
- Gabungkan replika sekunder menggunakan cmdlet Join-SqlAvailabilityGroup.
4.7 Menambahkan Replika ke Grup Ketersediaan
Konfigurasikan properti khusus replika yang mengontrol bagaimana setiap instance berpartisipasi dalam grup ketersediaan.
4.7.1 Mengonfigurasi Properti Replika
Tetapkan properti untuk setiap replika guna menentukan peran dan kemampuannya dalam grup ketersediaan.
- In SQL Server Studio Manajemen, perluas Ketersediaan Tinggi Selalu Aktif -> Grup Ketersediaan.
- Perluas grup ketersediaan, lalu perluas lagi. Ketersediaan Replika.
- Klik kanan pada replika dan pilih Properties.
- Tinjau dan ubah pengaturan koneksi untuk peran utama dan sekunder.
- Konfigurasikan nilai batas waktu sesi jika diperlukan.
- Klik OK untuk menyimpan perubahan.
4.7.2 Mengatur Mode Ketersediaan
Konfigurasikan mode ketersediaan untuk mengontrol perilaku sinkronisasi antar replika.
- Klik kanan grup ketersediaan dan pilih Properties.
- Dalam majalah Umum halaman, pergi ke Ketersediaan Replika bagian.
- Untuk setiap replika, pilih Komit sinkron or Komit asinkron dari dropdown.
- Gunakan commit sinkron untuk replika ketersediaan tinggi lokal.
- Gunakan commit asinkron untuk replika pemulihan bencana yang berlokasi geografis jauh.
- Klik OK untuk menyimpan konfigurasi.
4.7.3 Mengatur Mode Failover
Konfigurasikan mode failover untuk mengontrol bagaimana failover terjadi untuk setiap replika.
- Klik kanan grup ketersediaan dan pilih Properties.
- Dalam majalah Umum halaman, pergi ke Ketersediaan Replika bagian.
- Untuk replika commit sinkron, pilih secara otomatis or panduan mode failover.
- Failover otomatis memerlukan mode commit sinkron dan memungkinkan failover tanpa pengawasan.
- Untuk replika commit asinkron, hanya failover manual yang tersedia.
- Konfigurasikan hingga tiga replika untuk failover otomatis (satu primer dan dua sekunder).
- Klik OK untuk menerapkan pengaturan.
4.7.4 Mengonfigurasi Preferensi Pencadangan
Atur preferensi pencadangan untuk mengontrol di mana operasi pencadangan harus dilakukan.
- Klik kanan grup ketersediaan dan pilih Properties.
- Pilih Preferensi Pencadangan di sebelah kiri.
- Pilih salah satu preferensi pencadangan:
- Lebih suka sekolah menengahCadangan data disimpan di server sekunder jika tersedia, jika tidak, di server utama.
- Hanya untuk tingkat menengah: Pencadangan hanya pada replika sekunder
- primer: Pencadangan hanya pada replika utama
- Replika apa pun: Pencadangan pada replika mana pun yang tersedia
- Tetapkan nilai prioritas pencadangan untuk setiap replika (0-100).
- Nilai prioritas yang lebih tinggi menunjukkan cadangan yang lebih disukai. tarmendapat.
- Klik OK untuk menyimpan preferensi.
4.8 Mengkonfigurasi Listener Grup Ketersediaan
Buat listener untuk menyediakan titik koneksi tunggal yang secara otomatis mengarahkan ke replika utama saat ini.
4.8.1 Menciptakan Pendengar
Tambahkan pendengar ke grup ketersediaan untuk manajemen koneksi klien.
- In SQL Server Management Studio, perluas grup ketersediaan.
- Klik kanan Pendengar Grup Ketersediaan dan pilih Tambahkan Pendengar.
- Masukkan nama DNS untuk listener (misalnya, AG_Listener).
- Masukkan nomor port (defaultnya adalah 1433).
- Pilih IP statis untuk mode jaringan.
- Klik Add untuk menambahkan alamat IP untuk setiap subnet.
- Masukkan alamat IP dan pilih subnet.
- Klik OK untuk menciptakan pendengar.
- Verifikasi apakah listener muncul di Object Explorer dan dalam keadaan online.
4.8.2 Mengonfigurasi Pengaturan DNS dan IP
Verifikasi pendaftaran DNS dan konfigurasi jaringan untuk listener.
- Buka Pengelola DNS di pengendali domain.
- Pastikan nama pendengar telah terdaftar di semua alamat IP.
- Uji resolusi DNS dari mesin klien:
nslookup ListenerName
- Verifikasi bahwa semua alamat IP yang dikonfigurasi telah dikembalikan.
- Di Failover Cluster Manager, perluas Peran dan pilih grup ketersediaan.
- Verifikasi apakah sumber daya alamat IP tersebut online.
- Periksa apakah sumber daya nama jaringan sedang online.
4.8.3 Pengujian Konektivitas Pendengar
Verifikasi bahwa aplikasi klien dapat terhubung melalui listener.
- Dari mesin klien, buka SQL Server Studio Manajemen.
- Hubungkan menggunakan nama listener, bukan nama server.
- Jalankan kueri untuk memverifikasi koneksi ke replika utama saat ini:
SELECT @@SERVERNAME;
- Uji perutean read-intent dengan menambahkan ApplicationIntent=ReadOnly ke string koneksi.
- Verifikasi bahwa koneksi dialihkan ke replika sekunder yang dapat dibaca.
- Uji failover dengan melakukan failover grup ketersediaan secara manual dan verifikasi koneksi ulang.
4.9 Metode Sinkronisasi Data
Pilih metode sinkronisasi data untuk menginisialisasi replika sekunder dengan salinan basis data.
4.9.1 Penyemaian Otomatis
Pengisian data otomatis mentransfer data basis data melalui jaringan tanpa memerlukan pencadangan dan pemulihan manual.
- Saat membuat grup ketersediaan, pilih Penyemaian otomatis sebagai metode sinkronisasi.
- Pastikan konektivitas jaringan dan bandwidth yang cukup antara replika.
- Replika utama secara otomatis mengalirkan data basis data ke replika sekunder.
- Pantau kemajuan penyemaian menggunakan dasbor grup ketersediaan atau DMV.
- Penyemaian otomatis membutuhkan SQL Server 2016 atau lebih baru.
- Untuk basis data berukuran besar, pertimbangkan dampak jaringan dan jadwalkan selama periode penggunaan rendah.
4.9.2 Penyemaian Manual (Pencadangan dan Pemulihan)
Proses seeding manual melibatkan pengambilan backup pada primary dan memulihkannya pada replika sekunder.
- Pada replika utama, lakukan pencadangan penuh:
BACKUP DATABASE DatabaseName TO DISK = '\\SharePath\DatabaseName.bak';
- Lakukan pencadangan log transaksi:
BACKUP LOG DatabaseName TO DISK = '\\SharePath\DatabaseName.trn';
- Pada setiap replika sekunder, pulihkan cadangan lengkap:
RESTORE DATABASE DatabaseName FROM DISK = '\\SharePath\DatabaseName.bak' WITH NORECOVERY;
- Pulihkan cadangan log:
RESTORE LOG DatabaseName FROM DISK = '\\SharePath\DatabaseName.trn' WITH NORECOVERY;
- Gabungkan basis data ke grup ketersediaan:
ALTER DATABASE DatabaseName SET HADR AVAILABILITY GROUP = AG_Name;
- Verifikasi bahwa sinkronisasi dimulai dan basis data mencapai status TERSINKRONISASI.
4.9.3 File Cuplikan Basis Data
Gunakan file snapshot basis data untuk menginisialisasi replika sekunder dari file basis data yang sudah ada.
- Lepaskan atau cadangkan basis data pada replika utama.
- Salin file basis data ke setiap replika sekunder menggunakan jalur file yang sama.
- Pada replika sekunder, lampirkan basis data atau pulihkan tanpa pemulihan.
- Pastikan basis data berada dalam status RESTORING.
- Gabungkan basis data ke grup ketersediaan.
- Metode ini berguna untuk basis data yang sangat besar di mana transfer melalui jaringan tidak praktis.
5. FAQ
5.1 Pertanyaan Umum
T: Apa perbedaan antara Always On FCI dan Always On AG?
A: Always On Failover Cluster Instances menyediakan ketersediaan tinggi tingkat instance menggunakan penyimpanan bersama, sedangkan Always On Availability Groups menyediakan ketersediaan tinggi tingkat basis data tanpa penyimpanan bersama. AG menawarkan secondary yang dapat dibaca dan distribusi geografis yang lebih fleksibel.
T: Bisakah saya menggunakan Always On Availability Groups dengan SQL Server Edisi Standar?
A: Ya, SQL Server Edisi Standar 2016 dan versi yang lebih baru mendukung Basic Availability Group (AG) dengan batasan termasuk satu basis data per AG, maksimum dua replika, dan tidak ada dukungan sekunder yang dapat dibaca.
T: Apakah saya memerlukan penyimpanan bersama untuk Always On Availability Groups?
A: Tidak, grup ketersediaan tidak memerlukan penyimpanan bersama. Setiap replika menyimpan salinan basis data independen pada penyimpanan lokal, yang disinkronkan melalui pengiriman log transaksi.
T: Berapa jumlah replika maksimum dalam sebuah grup ketersediaan?
A: SQL Server Edisi Enterprise mendukung hingga sembilan replika (satu primer dan delapan sekunder). Grup ketersediaan terdistribusi dapat mendukung hingga total 18 replika di dua grup ketersediaan.
5.2 Pertanyaan Konfigurasi
T: Bagaimana cara saya memilih antara mode commit sinkron dan asinkron?
A: Gunakan commit sinkron untuk persyaratan tanpa kehilangan data di dalam pusat data yang sama atau jaringan dengan latensi rendah. Gunakan commit asinkron untuk replika pemulihan bencana jarak jauh di mana commit sinkron akan memengaruhi kinerja.
T: Bisakah saya menggabungkan replika sinkron dan asinkron dalam grup ketersediaan yang sama?
A: Ya, grup ketersediaan mendukung konfigurasi campuran dengan replika sinkron dan asinkron. Ini memungkinkan ketersediaan tinggi lokal dengan replika sinkron dan pemulihan bencana jarak jauh dengan replika asinkron.
T: Apa yang terjadi pada koneksi saya selama proses failover?
A: Koneksi yang ada akan terputus ketika terjadi failover. Aplikasi dengan logika percobaan ulang koneksi secara otomatis terhubung kembali ke primary yang baru melalui listener. Proses failover biasanya selesai dalam hitungan detik hingga menit.
T: Apakah saya perlu menyinkronkan login dan pekerjaan di seluruh replika?
J: Masuk SQL Server Untuk tahun 2019 dan sebelumnya, ya – login, tugas SQL Agent, dan server tertaut harus disinkronkan secara manual. SQL Server Tahun 2022 memperkenalkan grup ketersediaan yang terkandung yang secara otomatis menyertakan objek-objek ini.
5.3 Pertanyaan Manajemen
T: Bisakah saya menjalankan pencadangan pada replika sekunder?
A: Ya, replika sekunder mendukung pencadangan penuh, diferensial, dan log transaksi. Konfigurasikan preferensi pencadangan untuk mengurangi beban pencadangan dari replika utama dan mengurangi penggunaan sumber dayanya.
T: Bagaimana cara saya melakukan patch? SQL Server dengan waktu henti minimal?
A: Gunakan pembaruan bertahap dengan menambal replika sekunder terlebih dahulu, kemudian melakukan failover manual ke replika sekunder yang telah ditambal, dan terakhir menambal replika primer sebelumnya. Ini meminimalkan waktu henti selama durasi failover.
T: Bisakah saya menambahkan basis data ke grup ketersediaan yang sudah ada?
A: Ya, basis data dapat ditambahkan ke grup ketersediaan yang sedang berjalan. Basis data harus dalam model pemulihan penuh dengan cadangan lengkap, dan replika sekunder harus diisi menggunakan pengisian otomatis atau pencadangan dan pemulihan manual.
T: Apa itu penyemaian otomatis dan haruskah saya menggunakannya?
A: Pengisian data otomatis mentransfer data basis data melalui jaringan untuk menginisialisasi replika sekunder tanpa pencadangan manual. Gunakan ini untuk basis data yang lebih kecil atau ketika bandwidth jaringan mencukupi. Untuk basis data yang sangat besar, pengisian data manual mungkin lebih cepat.
T: Di mana saya harus menjalankan DBCC CHECKDB dalam sebuah availability group?
A: Anda harus menjalankan DBCC CHECKDB pada replika sekunder untuk mengurangi beban pada replika utama. Pemeriksaan konsistensi basis data dapat dijalankan terhadap basis data sekunder tanpa memengaruhi kinerja replika utama.
Untuk detail selengkapnya tentang DBCC CHECKDB, lihat halaman kami. panduan komprehensif.
5.4 Pertanyaan Pemecahan Masalah
T: Mengapa basis data saya dalam keadaan TIDAK SINKRONISASI?
A: Penyebab umum meliputi masalah konektivitas jaringan, terhentinya pergerakan data, ruang disk yang tidak mencukupi pada replika sekunder, atau masalah pada titik akhir. Periksa deskripsi kesehatan sinkronisasi dan SQL Server log kesalahan untuk detail spesifik. Jika basis data sekunder telah memasuki keadaan pemulihan atau menunjukkan pemulihan tertunda, lihat panduan yang tertaut untuk tarsudah diperbaiki.
T: Bagaimana cara memaksa failover ketika server utama tidak tersedia?
A: Hubungkan ke replika sekunder dan jalankan ALTER AVAILABILITY GROUP AG_Name FORCE_FAILOVER_ALLOW_DATA_LOSS. Perintah ini akan mengakui potensi kehilangan data dan segera mempromosikan replika sekunder menjadi replika utama.
T: Mengapa klien tidak dapat terhubung ke listener saya?
A: Verifikasi bahwa listener online di Failover Cluster Manager, pendaftaran DNS berhasil, semua IP listener dapat dijangkau dari klien, dan aturan firewall mengizinkan lalu lintas ke port listener.
T: Apa yang dimaksud dengan antrian redo yang besar?
A: Antrian redo yang besar menunjukkan bahwa replika sekunder tidak dapat menerapkan catatan log secepat catatan tersebut tiba. Hal ini dapat mengindikasikan hambatan I/O disk, kendala CPU, atau pemblokiran dari kueri baca-saja pada replika sekunder.
T: Apa yang harus saya lakukan jika bencana memengaruhi semua replika dan cadangan saya juga rusak?
A: Skenario terburuk ini, meskipun sangat rare, dapat terjadi akibat serangan ransomware, kegagalan penyimpanan yang meluas, atau bencana beruntun. Pertahanan utama Anda adalah pencegahan: pertahankan replika yang didistribusikan secara geografis, simpan cadangan di lokasi terpisah, dan
Uji prosedur pemulihan bencana Anda secara berkala. Jika semua opsi pemulihan standar gagal, gunakan layanan pemulihan khusus. Alat pemulihan data SQL Sebagai upaya terakhir dalam keadaan darurat, dapat dilakukan percobaan untuk mengekstrak data dari file MDF yang rusak.
5.5 Lisensi dan Cost Pertanyaan
T: Bagaimana cara mendapatkan lisensi untuk Always On Availability Groups?
A: SQL Server Lisensi bergantung pada edisi dan model penyebaran. Grup ketersediaan Edisi Enterprise memerlukan lisensi Enterprise pada semua replika. Replika sekunder pasif mungkin memenuhi syarat untuk lisensi gratis dalam kondisi tertentu.
T: Dapatkah saya menggunakan SQL Server Edisi Pengembang untuk grup ketersediaan?
A: Ya, Developer Edition mencakup semua fitur Enterprise Edition termasuk dukungan penuh untuk availability group. Namun, lisensinya hanya untuk pengembangan dan pengujian, bukan untuk penggunaan produksi.
T: Apakah salinan sekunder yang dapat dibaca memerlukan lisensi tambahan?
A: Lisensi bergantung pada skenario. Server sekunder pasif untuk pemulihan bencana biasanya tidak memerlukan lisensi. Server sekunder aktif yang melayani beban kerja baca saja umumnya memerlukan lisensi, meskipun ketentuan spesifiknya bervariasi.
T: Apakah ada cara gratis untuk mendapatkan ketersediaan tinggi dengan SQL Server?
A: SQL Server Express Edition tidak mendukung grup ketersediaan. SQL Server Edisi Standar mendukung Grup Ketersediaan Dasar (Basic Availability Groups).tarting dengan SQL Server 2016, menyediakan ketersediaan tinggi dasar pada lisensi Edisi Standar costs.
T: Apa itu Distributed Availability Groups?
A: Grup ketersediaan terdistribusi adalah jenis grup ketersediaan khusus yang mencakup dua grup ketersediaan terpisah, memungkinkan skenario yang melampaui kemampuan grup ketersediaan tradisional. Diperkenalkan pada SQL Server Pada tahun 2016, distributed availability groups (DAG) mengatasi kebutuhan penskalaan dan distribusi geografis.
6. Kesimpulan
6.1 Ringkasan Poin-Poin Utama
SQL Server Always On Availability Groups merupakan solusi ketersediaan tinggi dan pemulihan bencana unggulan Microsoft untuk basis data yang sangat penting. Solusi ini menyediakan failover tingkat basis data tanpa persyaratan penyimpanan bersama, replika sekunder yang dapat dibaca untuk mengurangi beban kerja, dan distribusi geografis yang fleksibel untuk perlindungan data yang komprehensif. Bagi organisasi yang masih menjalankan solusi seperti... pengiriman kayu gelondongan or replikasi, availability group menawarkan jalur peningkatan yang lebih kuat dan lebih sederhana secara operasional.
6.2 Kapan Menggunakan Grup Ketersediaan Selalu Aktif
Pilih grup ketersediaan (availability group) ketika membutuhkan ketersediaan tinggi tingkat basis data dengan kemampuan failover otomatis. Organisasi yang membutuhkan perlindungan tanpa kehilangan data (zero data loss protection) untuk basis data kritis akan mendapat manfaat dari replika komit sinkron (synchronous commit replicas) dengan failover otomatis. Aplikasi yang membutuhkan kemampuan skala baca (read-scale) memanfaatkan replika sekunder yang dapat dibaca (readable secondary replicas) untuk mendistribusikan beban kerja kueri.
6.3 Mendapatkan Stardengan Implementasi Anda
Mulailah perencanaan grup ketersediaan dengan menilai persyaratan bisnis termasuk RTO, RPO, dan batasan anggaran. Dokumentasikan infrastruktur basis data saat ini, ketergantungan aplikasi, dan kesenjangan ketersediaan tinggi. Rancang arsitektur grup ketersediaan yang memenuhi persyaratan sambil tetap berada dalam batasan sumber daya.
Referensi
- Dokumen Resmi Microsoft: Apa itu grup ketersediaan Always On?
- Dokumen Resmi Microsoft: Mendapatkan Stardilengkapi dengan Always On Availability Groups
- Dokumen Resmi Microsoft: Grup ketersediaan terdistribusi
tentang Penulis
Yuan Sheng adalah administrator basis data senior (DBA) dengan lebih dari 10 tahun pengalaman di SQL Server lingkungan dan manajemen basis data perusahaan. Ia telah berhasil menyelesaikan ratusan skenario pemulihan basis data di berbagai organisasi jasa keuangan, layanan kesehatan, dan manufaktur.
Yuan mengkhususkan diri dalam SQL Server Pemulihan basis data, solusi ketersediaan tinggi, dan optimasi kinerja. Pengalaman langsungnya yang luas mencakup pengelolaan basis data multi-terabyte, penerapan Always On Availability Group, dan pengembangan strategi pencadangan dan pemulihan otomatis untuk sistem bisnis yang sangat penting.
Melalui keahlian teknis dan pendekatan praktisnya, Yuan berfokus pada pembuatan panduan komprehensif yang membantu administrator basis data dan profesional TI memecahkan masalah kompleks SQL Server tantangan secara efisien. Dia selalu mengikuti perkembangan terbaru SQL Server rilis dan teknologi basis data Microsoft yang terus berkembang, secara berkala menguji skenario pemulihan untuk memastikan rekomendasinya mencerminkan praktik terbaik di dunia nyata.
Memiliki pertanyaan tentang SQL Server pemulihan atau butuh panduan pemecahan masalah basis data tambahan? Yuan menyambut masukan dan saran untuk meningkatkan sumber daya teknis ini.


















