Halaman ini menjelaskan cara mengonfirmasi bahwa data yang dimigrasikan sudah lengkap dan akurat. Setidaknya, Anda harus memverifikasi bahwa database dan tabel Anda ada di cluster AlloyDB untuk PostgreSQL yang dimigrasikan.
- Hubungkan ke cluster AlloyDB untuk PostgreSQL dengan klien atau alat kueri tempat Anda dapat menjalankan perintah SQL terhadap database yang dimigrasikan (misalnya, AlloyDB Studio di konsol Google Cloud atau
psql).Untuk mengetahui informasi selengkapnya tentang cara terhubung ke cluster dan instance AlloyDB untuk PostgreSQL, lihat Ringkasan koneksi AlloyDB untuk PostgreSQL.
- Jalankan kueri ANSI SQL yang tidak bergantung pada klien untuk memverifikasi data yang dimigrasikan:
Mencantumkan semua database
Jalankan kueri berikut untuk memverifikasi bahwa cluster AlloyDB untuk PostgreSQL tujuan Anda berisi semua database sumber yang Anda migrasikan:
SELECT datname FROM pg_database WHERE datistemplate = false;
Mencantumkan semua tabel dalam database
Jalankan kueri berikut untuk mencantumkan semua tabel pengguna di database Anda:
SELECT table_schema, table_name FROM information_schema.tables WHERE table_schema NOT IN ('pg_catalog', 'information_schema') AND table_type = 'BASE TABLE' ORDER BY table_schema, table_name;
Memeriksa definisi kolom tabel dan jenis data
Jalankan kueri berikut untuk memverifikasi nama kolom, jenis data, dan nullability untuk tabel tertentu:
SELECT column_name, data_type, character_maximum_length, is_nullable, column_default FROM information_schema.columns WHERE table_name = 'TABLE_NAME' ORDER BY ordinal_position;
Memeriksa jumlah baris tabel dan data sampel
Jalankan kueri berikut untuk memverifikasi jumlah baris dan memeriksa baris sampel dalam tabel tertentu:
- Verifikasi jumlah total baris:
SELECT COUNT(*) FROM TABLE_NAME;
- Lihat contoh data yang dimigrasikan:
SELECT * FROM TABLE_NAME LIMIT 10;
Memverifikasi kunci utama dan batasan
Jalankan kueri berikut untuk memverifikasi bahwa kunci utama, kunci asing, dan batasan unik telah dibuat dengan benar:
SELECT table_schema, table_name, constraint_name, constraint_type FROM information_schema.table_constraints WHERE table_schema NOT IN ('pg_catalog', 'information_schema') ORDER BY table_schema, table_name, constraint_type;
Memverifikasi indeks
Jalankan kueri berikut untuk memverifikasi bahwa indeks telah dibuat di tabel yang dimigrasikan:
SELECT schemaname, tablename, indexname, indexdef FROM pg_indexes WHERE schemaname NOT IN ('pg_catalog', 'information_schema') ORDER BY schemaname, tablename, indexname;
Memverifikasi urutan
Jalankan kueri berikut untuk memverifikasi bahwa urutan ada di database yang dimigrasikan:
SELECT sequence_schema, sequence_name, data_type FROM information_schema.sequences ORDER BY sequence_schema, sequence_name;
- Verifikasi jumlah total baris:
- Bandingkan hasil kueri ini dengan database sumber Anda untuk memastikan bahwa semua objek, jumlah baris, dan struktur skema cocok.
Untuk tabel besar yang menjalankan kueri COUNT(*) mungkin memerlukan banyak resource,
pertimbangkan untuk menggunakan
Data Validation Tool (DVT) open source. Alat ini menyediakan metode otomatis dan dapat diulang
untuk melakukan validasi kustom di berbagai lingkungan.
Jika semua yang Anda periksa sesuai dengan yang Anda harapkan, berarti Database Migration Service telah memigrasikan data dengan benar.