Auf dieser Seite wird beschrieben, wie Sie prüfen können, ob Ihre migrierten Daten vollständig und korrekt sind. Sie sollten mindestens prüfen, ob Ihre Datenbanken und Tabellen im migrierten AlloyDB for PostgreSQL-Cluster vorhanden sind.
- Stellen Sie eine Verbindung zu Ihrem AlloyDB for PostgreSQL-Cluster mit einem Client oder Abfragetool her, mit dem Sie SQL-Befehle für Ihre migrierten Datenbanken ausführen können (z. B. AlloyDB Studio in der Google Cloud Console oder
psql).Weitere Informationen zum Herstellen einer Verbindung zu AlloyDB for PostgreSQL-Clustern und -Instanzen finden Sie unter AlloyDB for PostgreSQL-Verbindungsübersicht.
- Führen Sie clientunabhängige ANSI-SQL-Abfragen aus, um die migrierten Daten zu prüfen:
Alle Datenbanken auflisten
Führen Sie die folgende Abfrage aus, um zu prüfen, ob der AlloyDB for PostgreSQL-Zielcluster alle migrierten Quelldatenbanken enthält:
SELECT datname FROM pg_database WHERE datistemplate = false;
Alle Tabellen in einer Datenbank auflisten
Führen Sie die folgende Abfrage aus, um alle Nutzertabellen in Ihrer Datenbank aufzulisten:
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;
Tabellenspaltendefinitionen und Datentypen prüfen
Führen Sie die folgende Abfrage aus, um die Spaltennamen, Datentypen und die Null-Zulässigkeit für eine bestimmte Tabelle zu prüfen:
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;
Zeilenanzahl und Beispieldaten der Tabelle prüfen
Führen Sie die folgenden Abfragen aus, um die Anzahl der Zeilen zu prüfen und Beispielzeilen in einer bestimmten Tabelle zu untersuchen:
- Prüfen Sie die Gesamtzeilenanzahl:
SELECT COUNT(*) FROM TABLE_NAME;
- Beispiel für migrierte Einträge ansehen:
SELECT * FROM TABLE_NAME LIMIT 10;
Primärschlüssel und Einschränkungen prüfen
Führen Sie die folgende Abfrage aus, um zu prüfen, ob Primärschlüssel, Fremdschlüssel und eindeutige Einschränkungen korrekt erstellt wurden:
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;
Indexe prüfen
Führen Sie die folgende Abfrage aus, um zu prüfen, ob für die migrierten Tabellen Indexe erstellt wurden:
SELECT schemaname, tablename, indexname, indexdef FROM pg_indexes WHERE schemaname NOT IN ('pg_catalog', 'information_schema') ORDER BY schemaname, tablename, indexname;
Sequenzen überprüfen
Führen Sie die folgende Abfrage aus, um zu prüfen, ob Sequenzen in der migrierten Datenbank vorhanden sind:
SELECT sequence_schema, sequence_name, data_type FROM information_schema.sequences ORDER BY sequence_schema, sequence_name;
- Prüfen Sie die Gesamtzeilenanzahl:
- Vergleichen Sie die Ergebnisse dieser Abfragen mit Ihrer Quelldatenbank, um sicherzustellen, dass alle Objekte, Zeilenanzahlen und Schemastrukturen übereinstimmen.
Bei großen Tabellen, bei denen das Ausführen von COUNT(*)-Abfragen ressourcenintensiv sein kann, sollten Sie das Open-Source-
Data Validation Tool (DVT) verwenden. Sie bietet eine automatisierte und wiederholbare Methode, um benutzerdefinierte Validierungen in verschiedenen Umgebungen durchzuführen.
Wenn alles wie erwartet ist, hat Database Migration Service die Daten korrekt migriert.