Data Transmission Service (DTS) melakukan migrasi data dari database PostgreSQL yang dikelola sendiri ke klaster PolarDB for PostgreSQL dengan downtime minimal. Panduan ini memandu Anda melalui proses konfigurasi dan menjalankan tugas migrasi.
Pilih jenis migrasi
Pilih kombinasi jenis migrasi yang sesuai dengan situasi Anda:
| Jenis migrasi | Fungsinya | Downtime | Biaya | Disarankan saat |
|---|---|---|---|---|
| Migrasi skema + Migrasi data penuh | Memindahkan skema dan data historis. Tugas selesai dan berhenti secara otomatis. | Diperlukan — hentikan penulisan ke sumber sebelum migrasi. | Gratis | Aplikasi dapat mentoleransi jendela pemeliharaan dan kesederhanaan menjadi prioritas utama. |
| Migrasi skema + Migrasi data penuh + Migrasi data inkremental | Migrasikan data historis, lalu terus replikasikan perubahan yang sedang berlangsung hingga Anda melakukan cutover. | Tidak diperlukan — layanan tetap berjalan selama migrasi. | Gratis untuk fase skema dan penuh; dikenai biaya untuk fase inkremental. | Kontinuitas bisnis sangat penting dan aplikasi tidak dapat mentoleransi downtime. |
Jika Anda hanya menjalankan migrasi penuh: Hentikan penulisan ke database sumber sebelum memulai. Data yang ditulis ke sumber selama migrasi tidak akan muncul di tujuan.
Prasyarat
Sebelum memulai, pastikan Anda telah memiliki:
Klaster PolarDB for PostgreSQL yang dibuat di Alibaba Cloud. Lihat Buat klaster PolarDB for PostgreSQL.
Penyimpanan klaster tujuan lebih besar daripada penyimpanan yang digunakan oleh database sumber.
Akun database sumber dengan izin yang diperlukan (lihat Izin yang diperlukan).
Izin yang diperlukan
| Database | Migrasi skema | Migrasi data penuh | Migrasi data inkremental |
|---|---|---|---|
| PostgreSQL yang dikelola sendiri | USAGE pada pg_catalog | SELECT pada objek yang akan dimigrasikan | Superuser |
| PolarDB for PostgreSQL | Izin pemilik skema target | — | — |
Mengapa superuser diperlukan untuk migrasi inkremental: DTS menggunakan fungsi replikasi logis PostgreSQL untuk menangkap perubahan berkelanjutan dari sumber. Fungsi-fungsi ini hanya dapat diakses oleh superuser. Tanpa izin superuser pada database sumber, tugas migrasi inkremental tidak dapat dimulai.
Untuk membuat akun dan memberikan izin:
PostgreSQL yang dikelola sendiri: lihat CREATE USER dan GRANT dalam dokumentasi PostgreSQL.
PolarDB for PostgreSQL: lihat Buat akun database dan Kelola database.
Objek yang didukung
Tabel dan skema
TABLE dan SCHEMA, termasuk PRIMARY KEY, UNIQUE KEY, FOREIGN KEY, DATATYPE (tipe data bawaan), dan DEFAULT CONSTRAINT.
Objek database lainnya
VIEW, PROCEDURE (PostgreSQL V11 atau lebih baru), FUNCTION, RULE, SEQUENCE, EXTENSION, TRIGGER, AGGREGATE, INDEX, OPERATOR, dan DOMAIN.
Operasi SQL yang didukung untuk migrasi inkremental
| Jenis operasi | Pernyataan yang didukung |
|---|---|
| DML | INSERT, UPDATE, DELETE |
| DDL | CREATE TABLE, DROP TABLE, ALTER TABLE (termasuk RENAME TABLE, ADD COLUMN, ADD COLUMN DEFAULT, ALTER COLUMN TYPE, DROP COLUMN, ADD CONSTRAINT, ADD CONSTRAINT CHECK, ALTER COLUMN DROP DEFAULT), TRUNCATE TABLE (PostgreSQL V11 atau lebih baru), CREATE INDEX ON TABLE |
Catatan migrasi DDL:
Migrasi DDL hanya tersedia untuk tugas yang dibuat setelah 1 Oktober 2020.
Tugas yang dibuat sebelum 12 Mei 2023 memerlukan trigger dan fungsi di database sumber untuk menangkap DDL. Lihat Gunakan trigger dan fungsi untuk mengimplementasikan migrasi DDL inkremental untuk database PostgreSQL.
Akun database sumber harus merupakan akun istimewa untuk migrasi DDL.
DTS tidak melakukan migrasi: pengubah CASCADE atau RESTRICT, DDL dari sesi dengan
SET session_replication_role = replica, DDL yang dieksekusi melalui pemanggilan fungsi, DDL yang dicampur dengan DML dalam satu pengiriman yang sama, pernyataan DDL di luar cakupan migrasi, atau CREATE SEQUENCE.Untuk menggunakan tugas migrasi data yang dibuat sebelum 12 Mei 2023 guna memigrasikan operasi DDL, Anda harus membuat trigger dan fungsi di database sumber untuk menangkap informasi DDL sebelum mengonfigurasi tugas migrasi data tersebut. Untuk informasi lebih lanjut, lihat Gunakan trigger dan fungsi untuk mengimplementasikan migrasi DDL inkremental untuk database PostgreSQL.
Migrasi inkremental tidak mendukung data tipe BIT.
Penagihan
| Jenis migrasi | Biaya konfigurasi instans | Biaya lalu lintas internet |
|---|---|---|
| Migrasi skema + Migrasi data penuh | Gratis | Dikenai biaya jika Access Method tujuan adalah Public IP Address. Lihat Ikhtisar penagihan. |
| Migrasi data inkremental | Dikenai biaya. Lihat Ikhtisar penagihan. | — |
Catatan penggunaan
Kunci asing dan kendala
DTS memigrasikan kunci asing dari database sumber selama migrasi skema.
Selama migrasi penuh dan inkremental, DTS sementara menonaktifkan pemeriksaan kendala kunci asing dan operasi kaskade pada tingkat sesi. Pembaruan dan penghapusan kaskade pada sumber selama periode ini dapat menyebabkan ketidakkonsistenan data.
Persyaratan database sumber
Server sumber harus memiliki bandwidth keluar yang cukup, atau kecepatan migrasi akan terpengaruh.
Tabel harus memiliki primary key atau kendala UNIK dengan nilai bidang unik. Tanpa ini, data duplikat dapat muncul di tujuan.
Jika tabel tujuan tidak dibuat oleh DTS (artinya, Schema Migration tidak dipilih), tabel tersebut harus memiliki primary key yang sama atau kendala UNIK non-null seperti tabel sumber. Jika tidak, data duplikat dapat muncul.Nama database sumber tidak boleh mengandung tanda hubung (-). Misalnya,
dts-testdatabukan nama yang valid.Migrasi tingkat tabel dengan pemetaan nama objek mendukung maksimal 1.000 tabel per tugas. Jika melebihi batas ini, bagi tabel tersebut ke beberapa tugas atau migrasikan seluruh database.
Persyaratan write-ahead log (WAL) untuk migrasi inkremental
Atur
wal_levelkelogical.Retensi WAL: minimal 24 jam untuk tugas inkremental saja; minimal 7 hari untuk tugas yang mencakup migrasi penuh dan inkremental. Setelah migrasi penuh selesai, kurangi retensi menjadi lebih dari 24 jam. Jika periode retensi terlalu singkat, DTS tidak dapat mengambil file WAL yang diperlukan, yang dapat menyebabkan kegagalan tugas, ketidakkonsistenan data, atau kehilangan data. Masalah yang disebabkan oleh retensi tidak mencukupi tidak dicakup oleh Perjanjian Tingkat Layanan (SLA) DTS.
Jika transaksi jangka panjang ada di database sumber selama migrasi inkremental, file WAL yang dihasilkan sebelum transaksi tersebut dikomit dapat menumpuk dan menghabiskan ruang disk di server sumber.
Batasan operasional
Alih bencana primary/secondary pada database PostgreSQL yang dikelola sendiri menyebabkan kegagalan tugas migrasi.
Jangan lakukan operasi DDL yang mengubah skema database atau tabel selama migrasi data penuh. Tugas akan gagal.
Jika satu bagian data yang akan dimigrasikan dari database sumber melebihi 256 MB setelah perubahan inkremental, instans migrasi dapat gagal dan tidak dapat dipulihkan. Konfigurasi ulang instans migrasi dalam kasus tersebut.
Peningkatan versi utama database sumber saat instans migrasi sedang berjalan menyebabkan instans gagal dan tidak dapat dipulihkan.
Database sumber Google Cloud Platform
Jika sumbernya adalah Google Cloud Platform Cloud SQL for PostgreSQL, Database Account harus memiliki izin cloudsqlsuperuser, dan akun tersebut harus memiliki izin Owner pada semua objek yang akan dimigrasikan. Berikan izin Owner dengan:
GRANT <owner_of_the_object_to_be_migrated> TO <source_database_account>;cloudsqlsuperuser tidak dapat mengelola data yang dimiliki oleh akun cloudsqlsuperuser lainnya.Persyaratan REPLICA IDENTITY
Untuk migrasi inkremental, jalankan perintah berikut pada setiap tabel yang akan dimigrasikan sebelum menulis data ke dalamnya dalam dua situasi berikut:
Saat instans migrasi dijalankan untuk pertama kalinya.
Saat granularitas objek migrasi adalah Skema dan tabel baru dibuat atau dibangun ulang dengan RENAME.
ALTER TABLE schema.table REPLICA IDENTITY FULL;Ganti schema dan table dengan nama skema dan nama tabel yang sebenarnya. Jalankan perintah ini selama jam sepi untuk menghindari penguncian tabel. Jika Anda melewati item pemeriksaan awal yang relevan, DTS akan menjalankan perintah ini secara otomatis saat instans diinisialisasi.
Tipe data SERIAL
Jika sebuah tabel berisi kolom SERIAL, database sumber secara otomatis membuat Sequence untuk kolom tersebut. Jika Schema Migration dipilih, pilih juga Sequence atau migrasikan seluruh skema. Jika tidak, instans migrasi dapat gagal.
Parameter session_replication_role
Untuk migrasi penuh atau inkremental dengan kunci asing, trigger, atau event trigger:
Jika akun tujuan adalah akun istimewa, DTS mengatur
session_replication_rolekereplicapada tingkat sesi selama migrasi.Jika akun tidak memiliki izin ini, atur secara manual
session_replication_rolekereplicapada database tujuan.
Selama parameter ini diatur ke replica, pembaruan atau penghapusan kaskade pada sumber dapat menyebabkan ketidakkonsistenan data. Setelah tugas migrasi DTS dilepas, atur ulang session_replication_role ke origin.
Tabel temporary dan slot replikasi
DTS membuat tabel temporary berikut di database sumber untuk menangkap pernyataan DDL, skema tabel inkremental, dan data heartbeat. Jangan hapus tabel-tabel ini selama migrasi:
public.dts_pg_class, public.dts_pg_attribute, public.dts_pg_type, public.dts_pg_enum, public.dts_postgres_heartbeat, public.dts_ddl_command, public.dts_args_session, dan public.aliyun_dts_instance.
Tabel-tabel ini dihapus secara otomatis ketika instans DTS dilepas.
DTS juga membuat slot replikasi dengan awalan dts_sync_ di database sumber. Slot ini menyimpan log inkremental selama 15 menit terakhir. Jika tugas migrasi dilepas atau gagal, DTS membersihkan slot replikasi secara otomatis. Jika terjadi alih bencana primer/sekunder pada instans RDS for PostgreSQL, bersihkan secara manual slot replikasi di database sekunder.
Catatan lainnya
Satu tugas migrasi hanya memindahkan data dari satu database. Untuk memigrasikan beberapa database, buat tugas terpisah untuk masing-masing.
DTS tidak mendukung migrasi tabel ekstensi TimescaleDB atau tabel dengan hubungan pewarisan lintas-skema.
Jalankan migrasi selama jam sepi. Migrasi data penuh menggunakan sumber daya baca dan tulis pada database sumber dan tujuan, sehingga meningkatkan beban server database.
Migrasi data penuh menggunakan operasi INSERT konkuren, yang menyebabkan fragmentasi tabel di tujuan. Setelah migrasi penuh, penyimpanan tabel tujuan akan lebih besar daripada penyimpanan tabel sumber.
Untuk kolom FLOAT atau DOUBLE, DTS membaca nilai menggunakan
ROUND(COLUMN, PRECISION). Presisi default adalah 38 digit untuk FLOAT dan 308 digit untuk DOUBLE. Pastikan hal ini sesuai dengan kebutuhan Anda sebelum memulai.DTS mencoba melanjutkan tugas yang gagal hingga 7 hari. Sebelum mengalihkan bisnis ke instans tujuan, hentikan atau lepaskan tugas tersebut. Atau, gunakan perintah
REVOKEuntuk mencabut izin tulis dari akun DTS di tujuan guna mencegah data sumber menimpa data tujuan jika tugas dilanjutkan.DTS memvalidasi konten data tetapi tidak memvalidasi metadata seperti Sequence. Validasi metadata secara mandiri.
Setelah mengalihkan bisnis ke tujuan, nilai sequence yang baru ditulis tidak akan dilanjutkan dari nilai maksimum di sumber. Perbarui nilai sequence di tujuan sebelum alih bencana. Lihat Perbarui nilai sequence di database tujuan.
Jika instans migrasi gagal, dukungan DTS mencoba pemulihan dalam waktu 8 jam. Selama pemulihan, DTS dapat me-restart instans atau menyesuaikan parameter instans (parameter database tidak diubah). Lihat Modifikasi parameter instans.
Untuk tabel partisi, sertakan baik tabel induk maupun semua partisi anak sebagai objek migrasi. Di PostgreSQL, tabel induk tidak menyimpan data secara langsung — semua data berada di partisi anak. Mengabaikan salah satunya menyebabkan ketidakkonsistenan data.
Persiapkan database sumber
PostgreSQL 10.1 atau lebih baru
Login ke server yang menjalankan database PostgreSQL yang dikelola sendiri.
Edit
postgresql.conf. Aturwal_levelkelogical, dan aturmax_wal_sendersdanmax_replication_slotske nilai yang lebih besar daripada jumlah: slot replikasi yang sedang digunakan ditambah jumlah instans DTS yang menggunakan database ini sebagai sumber. Misalnya, jika Anda saat ini memiliki 2 slot replikasi yang digunakan dan berencana menjalankan 3 instans DTS terhadap database ini, atur kedua parameter tersebut ke nilai lebih dari 5 (misalnya, 10).Restart database PostgreSQL setelah memodifikasipostgresql.confagar perubahan berlaku.# - Settings - wal_level = logical # minimal, replica, or logical # (change requires restart) ...... # - Sending Server(s) - max_wal_senders = 10 # max number of walsender processes # (change requires restart) #wal_keep_segments = 0 # in logfile segments, 16MB each; 0 disables #wal_sender_timeout = 60s # in milliseconds; 0 disables max_replication_slots = 10 # max number of replication slots # (change requires restart)Tambahkan blok CIDR server DTS ke
pg_hba.conf. Tambahkan hanya blok CIDR untuk wilayah tempat database tujuan berada. Lihat Tambahkan alamat IP server DTS ke daftar putih.Setelah memodifikasipg_hba.conf, jalankanSELECT pg_reload_conf();atau restart database agar perubahan berlaku. Jika Anda telah mengatur alamat IP dipg_hba.confke0.0.0.0/0, lewati langkah ini. Untuk detail tentangpg_hba.conf, lihat The pg_hba.conf File.
Buat database dan skema target di klaster tujuan agar sesuai dengan objek sumber yang akan dimigrasikan.
PostgreSQL 9.4.8 hingga 10.0
Unduh dan instal PostgreSQL dari source.
Unduh kode sumber PostgreSQL untuk versi Anda dari situs resmi PostgreSQL.
Jalankan perintah berikut untuk mengonfigurasi, mengompilasi, dan menginstal:
Penting- Versi OS PostgreSQL harus sesuai dengan versi GNU Compiler Collection (GCC). - Jika
sudo ./configuregagal dengan pesanreadline library not found. Use --without-readline to disable readline support., jalankansudo ./configure --without-readlinesebagai gantinya. - Jika Anda menggunakan metode instalasi lain, kompilasi pluginali_decodingdi lingkungan pengujian dengan OS dan versi GCC yang sama.sudo ./configure sudo make sudo make installUnduh, kompilasi, dan instal plugin
ali_decodingyang disediakan oleh DTS.Salin file output ke direktori yang diperlukan.
# contrib/ali_decoding/Makefile MODULE_big = ali_decoding MODULES = ali_decoding OBJS = ali_decoding.o DATA = ali_decoding--0.0.1.sql ali_decoding--unpackaged--0.0.1.sql EXTENSION = ali_decoding NAME = ali_decoding #subdir = contrib/ali_decoding #top_builddir = ../.. #include $(top_builddir)/src/Makefile.global #include $(top_srcdir)/contrib/contrib-global.mk #PG_CONFIG = /usr/pgsql-9.6/bin/pg_config #pgsql_lib_dir := $(shell $(PG_CONFIG) --libdir) #PGXS := $(shell $(PG_CONFIG) --pgxs) #include $(PGXS) # Jalankan perintah berikut untuk menginstal plug-in ali_decoding: ifdef USE_PGXS PG_CONFIG = pg_config PGXS := $(shell $(PG_CONFIG) --pgxs) include $(PGXS) else subdir = contrib/ali_decoding top_builddir = ../.. include $(top_builddir)/src/Makefile.global include $(top_srcdir)/contrib/contrib-global.mk endifsudo make sudo make install

Buat database dan skema target di klaster tujuan agar sesuai dengan objek sumber yang akan dimigrasikan.
Buat tugas migrasi
Langkah 1: Buka halaman Data Migration
Login ke Konsol DTS.Konsol DTS
Di panel navigasi kiri, klik Data Migration.
Di pojok kiri atas, pilih wilayah tempat instans migrasi akan berada.
Navigasi konsol DMS dapat berbeda tergantung mode dan tata letak. Lihat Mode sederhana dan Sesuaikan tata letak dan gaya konsol DMS.
Login ke Konsol DMS.Konsol DMS
Di bilah navigasi atas, arahkan kursor ke Data + AI > DTS (DTS) > Data Migration.
Di daftar drop-down di samping Data Migration Tasks, pilih wilayah tempat instans migrasi akan berada.
Langkah 2: Konfigurasi database sumber dan tujuan
Klik Create Task.
Konfigurasikan database sumber dan tujuan.
PeringatanSetelah memilih instans sumber dan tujuan, tinjau Limits yang ditampilkan di bagian atas halaman untuk menghindari masalah konfigurasi tugas.
Database sumber (PostgreSQL yang dikelola sendiri di ECS)
Parameter Deskripsi Task Name DTS menghasilkan nama secara otomatis. Tentukan nama deskriptif untuk mengidentifikasi tugas. Nama tugas tidak perlu unik. Select Existing Connection Pilih instans terdaftar dari daftar drop-down, atau konfigurasi koneksi secara manual. Database Type Pilih PostgreSQL. Access Method Pilih lokasi penerapan database sumber. Contoh ini menggunakan Self-managed Database on ECS. Untuk metode akses lainnya, lihat Persiapan. Instance Region Wilayah tempat database PostgreSQL sumber berada. ECS Instance ID ID instans ECS yang meng-host database sumber. Port Number Port layanan. Default: 5432. Database Name Nama database yang berisi objek yang akan dimigrasikan. Database Account Akun database sumber. Lihat Izin yang diperlukan. Database Password Kata sandi untuk akun database. Encryption Pilih Non-encrypted atau SSL-encrypted. Untuk SSL: unggah CA Certificate (wajib), dan opsional Client Certificate, Private Key of Client Certificate, dan Private Key Password of Client Certificate. Database tujuan (PolarDB for PostgreSQL)
Parameter Deskripsi Select Existing Connection Pilih instans terdaftar dari daftar drop-down, atau konfigurasi koneksi secara manual. Database Type Pilih PolarDB for PostgreSQL. Access Method Pilih Alibaba Cloud Instance. Instance Region Wilayah tempat klaster PolarDB for PostgreSQL tujuan berada. Instance ID ID klaster PolarDB for PostgreSQL tujuan. Database Name Nama database tujuan untuk menerima objek yang dimigrasikan. Database Account Akun database tujuan. Lihat Izin yang diperlukan. Database Password Kata sandi untuk akun database. Klik Test Connectivity and Proceed.
- Blok CIDR server DTS harus ditambahkan ke pengaturan keamanan database sumber dan tujuan. Lihat Tambahkan alamat IP server DTS ke daftar putih. - Jika database sumber atau tujuan dikelola sendiri dan Access Method bukan Alibaba Cloud Instance, klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.
Langkah 3: Pilih objek migrasi dan konfigurasi pengaturan lanjutan
Di halaman Configure Objects, konfigurasikan pengaturan migrasi.
- Jika Schema Migration tidak dipilih, buat database dan tabel target di tujuan sebelum memulai, dan aktifkan pemetaan nama objek di Selected Objects. - Jika tabel berisi kolom SERIAL dan Schema Migration dipilih, pilih juga Sequence atau migrasikan seluruh skema.Parameter Deskripsi Migration Types Pilih jenis migrasi sesuai skenario Anda. Untuk detail, lihat Pilih jenis migrasi. Processing Mode of Conflicting Tables Precheck and Report Errors: gagal dalam pemeriksaan awal jika sumber dan tujuan memiliki tabel dengan nama identik. Gunakan pemetaan nama objek untuk menyelesaikan konflik sebelum migrasi. Ignore Errors and Proceed: melewati pemeriksaan konflik. Selama migrasi penuh, DTS mempertahankan catatan tujuan yang sudah ada. Selama migrasi inkremental, DTS menimpa catatan tujuan. Jika skema berbeda, hanya kolom yang cocok yang dimigrasikan atau tugas gagal. Source Objects Pilih skema atau tabel yang akan dimigrasikan. Klik ikon panah untuk menambahkannya ke Selected Objects. Jika Anda memilih tabel, DTS tidak memigrasikan view, trigger, atau stored procedure. Selected Objects Klik kanan objek untuk mengganti namanya (lihat Pemetaan nama objek tunggal), atur kondisi filter WHERE, atau pilih operasi SQL yang akan dimigrasikan. Klik Batch Edit untuk mengganti nama beberapa objek sekaligus (lihat Pemetaan nama beberapa objek sekaligus). Mengganti nama objek dapat menyebabkan objek dependen gagal dimigrasikan. Klik Next: Advanced Settings dan konfigurasikan opsi lanjutan.
Parameter Deskripsi Dedicated Cluster for Task Scheduling Secara default, DTS menjadwalkan tugas ke kluster bersama. Untuk stabilitas yang lebih baik, beli kluster khusus. Lihat Apa itu kluster khusus DTS. Retry Time for Failed Connections Berapa lama DTS mencoba kembali saat koneksi gagal. Rentang: 10–1.440 menit. Default: 720. Atur lebih dari 30 menit. Jika koneksi berhasil dalam jangka waktu ini, DTS melanjutkan tugas; jika tidak, tugas berhenti. Jika beberapa tugas berbagi sumber atau tujuan yang sama, nilai yang paling baru diatur berlaku. Biaya DTS tetap berjalan selama percobaan ulang. Retry Time for Other Issues Berapa lama DTS mencoba kembali saat terjadi kegagalan DDL atau DML. Rentang: 1–1.440 menit. Default: 10. Atur lebih dari 10 menit. Harus kurang dari Retry Time for Failed Connections. Enable Throttling for Full Data Migration Membatasi kecepatan migrasi penuh untuk mengurangi beban pada sumber dan tujuan. Konfigurasikan QPS (Queries Per Second) to the source database, RPS (Rows Per Second) migrasi data penuh, dan Data migration speed for full migration (MB/s). Tersedia hanya jika Full Data Migration dipilih. Enable Throttling for Incremental Data Migration Membatasi kecepatan migrasi inkremental. Konfigurasikan RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Tersedia hanya jika Incremental Data Migration dipilih. Environment Tag Opsional. Beri label lingkungan pada instans. Configure ETL Aktifkan ekstrak, transformasi, dan muat (ETL) untuk menerapkan aturan pemrosesan data selama migrasi. Pilih Yespengaturan pemberitahuan peringatan untuk memasukkan pernyataan di editor kode. Lihat Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data. Monitoring and Alerting Pilih Yes untuk menerima peringatan saat tugas gagal atau latensi migrasi melebihi ambang batas. Konfigurasikan ambang batas peringatan dan kontak notifikasi. Lihat Konfigurasi pemantauan dan peringatan saat membuat tugas DTS. Klik Next Step: Data Verification untuk mengonfigurasi tugas verifikasi data. Untuk informasi selengkapnya, lihat Mengonfigurasi tugas verifikasi data.
Langkah 4: Jalankan pemeriksaan awal dan beli instans
Klik Next: Save Task Settings and Precheck.
Untuk melihat pratinjau parameter API sebelum menyimpan, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
- DTS menjalankan pemeriksaan awal sebelum tugas migrasi dimulai. Tugas tidak dapat dimulai sampai pemeriksaan awal berhasil. - Untuk item pemeriksaan awal yang gagal, klik View Details untuk melihat penyebabnya, perbaiki, lalu jalankan kembali pemeriksaan awal. - Untuk peringatan pemeriksaan awal: jika peringatan tidak dapat diabaikan, perbaiki masalah dan jalankan kembali pemeriksaan awal. Jika peringatan dapat diabaikan, klik Confirm Alert Details > Ignore > OK > Precheck Again. Mengabaikan peringatan dapat menyebabkan ketidakkonsistenan data.Saat Success Rate mencapai 100%, klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan instans.
Parameter Deskripsi Resource Group Kelompok sumber daya untuk instans migrasi. Default: default resource group. Lihat Apa itu Resource Management? Instance Class Kelas instans menentukan kecepatan migrasi. Pilih berdasarkan beban kerja Anda. Lihat Kelas instans migrasi data. Pilih kotak centang Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start, lalu klik OK di dialog konfirmasi.
Langkah 5: Pantau progres migrasi
Buka halaman Data Migration untuk memantau tugas.
Hanya migrasi penuh: tugas berhenti otomatis saat selesai. Status menunjukkan Completed.
Migrasi penuh + inkremental: tugas berjalan terus-menerus. Status menunjukkan Running. Migrasi inkremental tidak berhenti sampai Anda melepaskannya secara manual.
Verifikasi data dan peralihan
Sebelum mengalihkan lalu lintas bisnis ke klaster tujuan, verifikasi konsistensi data dan perbarui sequence.
Kapan harus beralih (migrasi inkremental)
Lakukan peralihan saat database sumber tidak menerima penulisan baru dan latensi migrasi mencapai 0. Verifikasi hal-hal berikut sebelum beralih:
| Periksa | Cara memverifikasi | Siap saat |
|---|---|---|
| Tidak ada perubahan masuk baru | Pantau latensi migrasi inkremental di konsol DTS | Latensi mencapai 0 |
| Sequence diperbarui | Lihat Perbarui nilai sequence di database tujuan | Nilai sequence di tujuan telah diperbarui |
Langkah-langkah peralihan
Hentikan penulisan ke database sumber.
Tunggu hingga latensi migrasi inkremental mencapai 0.
Perbarui nilai sequence di database tujuan. Lihat Perbarui nilai sequence di database tujuan.
Hentikan atau lepaskan tugas migrasi DTS untuk mencegahnya dilanjutkan dan menimpa data tujuan.
Alihkan string koneksi aplikasi Anda ke klaster tujuan.