Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server di Windows
SQL Server mendukung peningkatan database yang direplikasi dari versi SQL Server sebelumnya; tidak diperlukan untuk menghentikan aktivitas di simpul lain saat node sedang ditingkatkan.
Prerequisites
Pastikan Anda mematuhi aturan mengenai versi mana yang didukung dalam topologi:
Distributor dapat menjadi versi apa pun selama lebih besar dari atau sama dengan versi Penerbit (dalam banyak kasus Distributor adalah instans yang sama dengan Penerbit).
Publisher dapat berupa versi apa pun selama kurang dari atau sama dengan versi Distributor.
Penerbit dan Distributor harus merupakan produk yang sama. Keduanya adalah SQL Server, atau keduanya adalah Azure SQL Managed Instance.
Versi pelanggan tergantung pada jenis publikasi:
Seorang Langganan ke publikasi transaksional dapat berupa versi apa pun dalam dua versi dari versi Penerbit. Misalnya: Penerbit SQL Server 2012 (11.x) dapat memiliki Pelanggan SQL Server 2014 (12.x) dan SQL Server 2016 (13.x) ; dan Penerbit SQL Server 2016 (13.x) dapat memiliki Pelanggan SQL Server 2014 (12.x) dan SQL Server 2012 (11.x).
Pelanggan untuk publikasi gabungan dapat berupa semua versi yang sama dengan atau lebih rendah dari versi Penerbit, mana pun yang didukung sesuai dengan siklus dukungan siklus hidup versi.
Jalur peningkatan
Jalur peningkatan ke SQL Server berbeda tergantung pada pola penyebaran. SQL Server menawarkan dua jalur peningkatan secara umum:
Berdampingan: Sebarkan lingkungan paralel dan pindahkan database bersama dengan objek tingkat instans terkait, seperti login, pekerjaan, dll. ke lingkungan baru.
Peningkatan di tempat: Izinkan media penginstalan SQL Server untuk meningkatkan penginstalan SQL Server yang ada dengan mengganti bit SQL Server, dan meningkatkan objek database. Untuk lingkungan yang menjalankan grup ketersediaan (AG) atau instans kluster failover (FCI), upgrade di tempat dikombinasikan dengan peningkatan bergulir untuk meminimalkan downtime.
Pendekatan umum untuk peningkatan topologi replikasi secara berdampingan adalah memindahkan pasangan penerbit-pelanggan secara bertahap ke lingkungan sejajar yang baru, daripada memindahkan seluruh topologi sekaligus. Pendekatan bertahap ini membantu mengontrol waktu henti, dan meminimalkan dampak hingga batas tertentu bagi bisnis tergantung pada replikasi.
Sebagian besar artikel ini difokuskan untuk meningkatkan versi SQL Server. Namun, proses peningkatan di tempat juga harus digunakan saat menambal SQL Server dengan paket layanan atau pembaruan kumulatif juga.
Remarks
Meningkatkan topologi replikasi adalah proses multi-langkah. Sebaiknya coba tingkatkan replika topologi replikasi Anda di lingkungan pengujian sebelum menjalankan peningkatan pada lingkungan produksi aktual. Ini membantu merapikan semua dokumentasi yang diperlukan agar proses peningkatan dapat berjalan lancar tanpa menimbulkan downtime yang mahal dan berkepanjangan selama proses peningkatan yang sesungguhnya. Anda dapat mengurangi waktu henti secara signifikan dengan penggunaan AG dan/atau FCI untuk lingkungan produksi mereka sambil meningkatkan topologi replikasi mereka. Selain itu, sebaiknya ambil cadangan semua database termasuk msdb, master, Database distribusi, dan database pengguna yang berpartisipasi dalam replikasi sebelum mencoba peningkatan.
Saat Anda memiliki database distribusi dalam instans kluster failover, pastikan bahwa semua simpul yang berpartisipasi menggunakan build yang sama. Kami tidak merekomendasikan penyiapan di mana satu simpul adalah versi SQL Server yang lebih lama dari SQL Server 2016 (13.x) SP2-CU3 atau SQL Server 2017 (14.x) CU6 dan simpul lainnya adalah versi SQL Server yang lebih baru dari SQL Server 2016 (13.x) SP2-CU3 atau SQL Server 2017 (14.x) CU6. Dimulai di SQL Server 2016 (13.x) SP2-CU3 dan SQL Server 2017 (14.x) CU6, dukungan ditambahkan untuk menggunakan database distribusi di AG dan untuk objek baru (tabel, prosedur tersimpan) dalam database distribusi. Jika database distribusi Anda berada dalam instans kluster failover dan Anda melakukan migrasi bertahap (dan Anda tidak dapat memutakhirkan semua simpul ke versi SQL Server yang sama), untuk jangka waktu migrasi yang sempit, kami sarankan Anda melakukan tugas akun seperti menambahkan pelanggan, langganan, penerbit, atau publikasi baru pada simpul yang memiliki versi SQL Server yang lebih baru.
Note
Untuk topologi replikasi dengan distributor jarak jauh:
Matriks replikasi
Matriks kompatibilitas replikasi transaksional dan rekam jepret
| Publisher | Distributor | Subscriber |
|---|---|---|
| Azure SQL Managed InstanceAUTD | Azure SQL Managed InstanceAUTD | Azure SQL Database Azure SQL Managed InstanceAUTD Azure SQL Managed Instance2025 Azure SQL Managed Instance2022 SQL Server 2022 (16.x) SQL Server 2019 (15.x) |
| Azure SQL Managed Instance2025 | Azure SQL Managed InstanceAUTD Azure SQL Managed Instance2025 |
Azure SQL Database Azure SQL Managed InstanceAUTD Azure SQL Managed Instance2025 Azure SQL Managed Instance2022 SQL Server 2022 (16.x) SQL Server 2019 (15.x) |
| Azure SQL Managed Instance2022 | Azure SQL Managed InstanceAUTDAzure SQL Managed Instance2025 Azure SQL Managed Instance2022 |
Azure SQL Database Azure SQL Managed InstanceAUTD Azure SQL Managed Instance2022 SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) |
| SQL Server 2022 (16.x) | SQL Server 2025 (17.x) SQL Server 2022 (16.x) |
Azure SQL Database Database SQL di Microsoft Fabric1 Azure SQL Managed InstanceAUTD Azure SQL Managed Instance2025 Azure SQL Managed Instance2022 SQL Server 2025 (17.x) SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) |
| SQL Server 2019 (15.x) | SQL Server 2025 (17.x) SQL Server 2022 (16.x) SQL Server 2019 (15.x) |
Azure SQL Database Azure SQL Managed InstanceAUTD Azure SQL Managed Instance2025 Azure SQL Managed Instance2022 SQL Server 2025 (17.x) SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) |
| SQL Server 2017 (14.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) |
Azure SQL Managed Instance2022 SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) |
| SQL Server 2016 (13.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) |
SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) |
| SQL Server 2014 (12.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) |
SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2012 (11.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) |
SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
AUTD Berlaku untuk Azure SQL Managed Instance yang dikonfigurasi dengan kebijakan pembaruan Always-up-to-date.
2025 Berlaku untuk Azure SQL Managed Instance yang dikonfigurasi dengan kebijakan pembaruan SQL Server 2025.
2022 Berlaku untuk Azure SQL Managed Instance yang dikonfigurasi dengan kebijakan pembaruan SQL Server 2022.
1 Berlaku berdasarkan persyaratan konfigurasi yang didukung untuk database SQL di Microsoft Fabric.
Menggabungkan matriks kompatibilitas replikasi
| Publisher | Distributor | Subscriber |
|---|---|---|
| SQL Server 2022 (16.x) | SQL Server 2022 (16.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2019 (15.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) |
SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2017 (14.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) |
SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2016 (13.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) |
SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2014 (12.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) |
SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2012 (11.x) | SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) |
SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
| SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
SQL Server 2022 (16.x) SQL Server 2019 (15.x) SQL Server 2017 (14.x) SQL Server 2016 (13.x) SQL Server 2014 (12.x) SQL Server 2012 (11.x) SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
SQL Server 2008 R2 (10.50.x) SQL Server 2008 (10.0.x) |
Pertimbangan peningkatan
Jalankan Agen Pembaca Log untuk replikasi transaksional sebelum peningkatan
Sebelum memutakhirkan SQL Server, Anda harus memastikan bahwa semua transaksi yang dilakukan dari tabel yang diterbitkan diproses oleh Agen Pembaca Log. Untuk memastikan bahwa semua transaksi diproses, lakukan langkah-langkah berikut untuk setiap database yang berisi publikasi transaksi:
Pastikan bahwa Agen Pembaca Log berjalan untuk basis data tersebut. Secara bawaan, agen berjalan terus menerus.
Hentikan aktivitas pengguna pada tabel yang diterbitkan.
Izinkan waktu bagi Agen Pembaca Log untuk menyalin transaksi ke database distribusi, lalu hentikan agen.
Jalankan sp_replcmds untuk memverifikasi bahwa semua transaksi diproses. Hasil yang ditetapkan dari prosedur ini harus kosong.
Jalankan sp_replflush untuk menutup koneksi dari
sp_replcmdsLakukan peningkatan server ke versi terbaru SQL Server.
Mulai ulang SQL Server Agent dan Agen Pembaca Log jika tidak dimulai secara otomatis setelah peningkatan.
Jalankan agen-agen untuk replikasi penggabungan setelah proses peningkatan
Setelah peningkatan, jalankan Agen Snapshot untuk setiap publikasi gabungan dan Agen Penggabungan untuk setiap langganan guna mengupdate metadata replikasi. Anda tidak perlu menerapkan rekam jepret baru, karena tidak perlu menginisialisasi ulang langganan. Metadata langganan diperbarui saat pertama kali Agen Penggabungan dijalankan setelah peningkatan. Ini berarti bahwa database langganan dapat tetap online dan aktif selama pemutakhiran Publisher.
Replikasi penggabungan menyimpan metadata publikasi dan langganan dalam beberapa tabel sistem pada basis data publikasi dan langganan. Menjalankan Agen Rekam Jepret memperbarui metadata publikasi dan menjalankan Agen Penggabungan memperbarui metadata langganan. Hanya diperlukan untuk menghasilkan cuplikan publikasi. Jika publikasi penggabungan menggunakan filter berparameter, setiap partisi juga memiliki rekam jepret. Tidak perlu memperbarui cuplikan yang terbagi ini.
Jalankan agen dari SQL Server Management Studio, Replication Monitor, atau dari baris perintah. Untuk informasi selengkapnya tentang menjalankan Agen Rekam Jepret, lihat artikel berikut ini:
- Membuat dan Menerapkan Rekam Jepret Awal
- Memulai dan Menghentikan Agen Replikasi (SQL Server Management Studio)
- Membuat dan Menerapkan Rekam Jepret Awal
- Konsep Berkas Eksekusi Agen Replikasi
Untuk informasi selengkapnya tentang menjalankan Agen Penggabungan, lihat artikel berikut ini:
Setelah memutakhirkan SQL Server dalam topologi yang menggunakan replikasi penggabungan, ubah tingkat kompatibilitas publikasi manapun jika Anda ingin memanfaatkan fitur baru.
Tingkatkan ke edisi Standar, Grup Kerja, atau Ekspres
Sebelum memutakhirkan dari satu edisi SQL Server ke edisi lainnya, verifikasi bahwa fungsionalitas yang saat ini Anda gunakan didukung dalam edisi yang Sedang Anda tingkatkan. Untuk informasi selengkapnya, lihat bagian tentang Replikasi di Edisi dan fitur SQL Server 2022 yang didukung.
Langkah-langkah untuk meningkatkan topologi replikasi
Langkah-langkah ini menguraikan urutan server dalam topologi replikasi harus ditingkatkan. Langkah yang sama berlaku apakah Anda menjalankan replikasi transaksional atau penggabungan. Namun, langkah-langkah ini tidak mencakup replikasi Peer-to-Peer, mengantre memperbarui langganan, atau segera memperbarui langganan.
Peningkatan langsung
- Tingkatkan Distributor.
- Tingkatkan Penerbit dan Pelanggan. Ini dapat di-upgrade dalam urutan apa pun.
Note
Untuk SQL Server 2008 (10.0.x) dan SQL Server 2008 R2 (10.50.x), peningkatan penerbit dan pelanggan harus dilakukan pada saat yang sama untuk menyelaraskan dengan matriks topologi replikasi. Penerbit atau pelanggan SQL Server 2008 (10.0.x) dan SQL Server 2008 R2 (10.50.x) tidak dapat memiliki penerbit atau pelanggan SQL Server 2016 (13.x) (atau lebih besar). Jika peningkatan pada saat yang sama tidak dimungkinkan, gunakan peningkatan menengah untuk meningkatkan instans SQL Server ke SQL Server 2014 (12.x), lalu tingkatkan lagi ke SQL Server 2016 (13.x) (atau lebih besar).
Peningkatan berdampingan
- Tingkatkan Distributor.
- Konfigurasi ulang Distribusi pada instans SQL Server baru.
- Mutakhirkan Publisher.
- Tingkatkan Abonemen.
- Konfigurasi ulang semua pasangan Publisher-Subscriber, termasuk reinisialisasi Pelanggan.
Langkah-langkah migrasi sejajar Distributor ke Windows Server
Peningkatan berdampingan adalah satu-satunya jalur peningkatan yang tersedia untuk instans SQL Server yang berpartisipasi dalam kluster failover. Langkah-langkah berikut dapat dilakukan pada instans SQL Server mandiri, atau satu dalam Instans Kluster Failover (FCI).
Siapkan instans SQL Server baru (mandiri, atau FCI), edisi, dan versi sebagai distributor Anda di Windows Server dengan kluster Windows yang berbeda dan nama FCI SQL Server atau nama host mandiri. Anda perlu menjaga struktur direktori tetap sama dengan distributor lama untuk memastikan bahwa file eksekusi agen replikasi, folder replikasi, dan jalur file database ditemukan di jalur yang sama pada lingkungan baru. Ini mengurangi langkah-langkah pasca migrasi/peningkatan yang diperlukan.
Pastikan replikasi Anda disinkronkan lalu matikan semua agen replikasi.
Matikan instans Distributor SQL Server saat ini. Jika ini adalah instans mandiri, matikan server. Jika ini adalah FCI SQL Server, maka nonaktifkan seluruh peran SQL Server secara offline di dalam manajer kluster, termasuk nama jaringan.
Hapus entri objek komputer DNS dan Direktori Aktif untuk lingkungan lama (instans distributor saat ini).
Ubah nama host server baru agar sesuai dengan server lama.
- Jika ini adalah SQL Server FCI, ganti nama SQL Server FCI baru dengan nama server virtual yang sama dengan instans lama.
Salin file database dari instans sebelumnya menggunakan pengalihan SAN, salinan penyimpanan, atau salinan file.
Bawa instans SQL Server baru secara online.
Mulai ulang semua agen replikasi dan verifikasi apakah agen berhasil berjalan.
Validasi jika replikasi berfungsi seperti yang diharapkan.
Gunakan media penyiapan SQL Server untuk menjalankan peningkatan instans SQL Server Anda di tempat ke versi baru SQL Server.
Note
Untuk mengurangi waktu henti, kami sarankan Anda melakukan migrasi secara berdampingan distributor sebagai satu aktivitas, dan peningkatan di tempat ke SQL Server sebagai aktivitas lain. Ini memungkinkan Anda untuk mengambil pendekatan bertahap, mengurangi risiko, dan meminimalkan waktu jeda.
Sinkronisasi web untuk replikasi penggabungan
Opsi Sinkronisasi web untuk replikasi penggabungan mengharuskan Anda menyalin Pendengar Replikasi SQL Server (replisapi.dll) ke direktori virtual di server Internet Information Services (IIS) yang digunakan untuk sinkronisasi. Saat Anda mengonfigurasi sinkronisasi Web, Wizard Konfigurasi Sinkronisasi Web menyalin file ke direktori virtual. Jika Anda meningkatkan komponen SQL Server yang diinstal di server IIS, Anda harus menyalin replisapi.dll secara manual dari direktori COM ke direktori virtual di server IIS. Untuk informasi selengkapnya tentang mengonfigurasi sinkronisasi Web, lihat Mengonfigurasi Sinkronisasi Web.
Memulihkan database yang direplikasi dari versi yang lebih lama
Untuk memastikan pengaturan replikasi dipertahankan saat memulihkan cadangan database yang direplikasi dari versi sebelumnya: pulihkan ke server dan database dengan nama yang sama dengan server dan database tempat cadangan diambil.