Migration prüfen

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.

  1. 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.

  2. 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:

    1. Prüfen Sie die Gesamtzeilenanzahl:
      SELECT COUNT(*) FROM TABLE_NAME;
    2. 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;
  3. 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.