이 페이지에서는 마이그레이션된 데이터가 완전하고 정확한지 확인하는 방법을 설명합니다. 최소한 SQL 문을 실행하여 마이그레이션된 Cloud SQL 데이터베이스에 테이블이 있는지 확인해야 합니다. 소스 데이터베이스와 대상 데이터베이스 간의 데이터 비교를 더 정확하게 하려면 오픈소스 데이터 검증 도구를 사용해 보세요.
SQL 문으로 대상 데이터 확인
SQL 문을 실행하여 마이그레이션된 Cloud SQL 데이터베이스에 테이블이 있는지 확인할 수 있습니다. 다음 단계를 따르세요.
- 마이그레이션된 데이터베이스에 대해 SQL 명령어를 실행할 수 있는 도구를 사용하여 PostgreSQL용 Cloud SQL 인스턴스에
연결합니다.
Cloud SQL 인스턴스에 연결하는 방법에 대한 자세한 내용은 Cloud SQL 문서의 연결 옵션 을 참조하세요.
SQL 명령어를 실행하여 마이그레이션된 데이터를 확인합니다. 예를 들면 다음과 같습니다.
- 데이터베이스의 모든 테이블을 나열합니다.
SELECT * FROM pg_catalog.pg_tables;
- 테이블 콘텐츠를 확인합니다.
SELECT * FROM TABLE_NAME';
- 데이터베이스의 모든 테이블을 나열합니다.
데이터 검증 도구로 데이터 확인
다음 단계에서는 최소한의 예를 보여줍니다.
소스와 대상 모두에 액세스할 수 있는 가상 머신을 배포하거나 사용합니다.
가상 머신에서 데이터 검증 도구를 설치할 폴더를 만듭니다.
이 폴더로 이동합니다.
pip를 사용하여 데이터 검증 도구를 설치합니다.pip install google-pso-data-validator
소스 Oracle 데이터베이스와 대상 PostgreSQL용 Cloud SQL 데이터베이스에 대한 연결을 만듭니다.
data-validation connections add -c source Oracle --host 'ip-address' --port port --user username --password pswd --database database-name data-validation connections add -c target Postgres --host 'ip-address' --port port --user username --password pswd --database database-name
예를 들면 다음과 같습니다.
data-validation connections add -c source Oracle --host '10.10.10.11' --port 1521 --user system --password pswd --database XE data-validation connections add -c target Postgres --host '10.10.10.12' --port 5432 --user postgres --password pswd --database postgres
소스 데이터베이스와 대상 데이터베이스 간의 데이터를 비교할 테이블 목록을 만들거나 생성합니다.
export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas schema-name)
예를 들면 다음과 같습니다.
export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas public)
모든 테이블에 대해 전체 유효성 검사를 실행합니다.
data-validation validate column --source-conn source --target-conn target --tables-list "${TABLES_LIST}"
상대적 일관성을 보장하기 위해 복제 중에 이 유효성 검사를 실행하는 것이 좋습니다. 작은 승격 기간 동안 대규모 테이블 쿼리를 실행하는 데 너무 오래 걸릴 수 있습니다. 이러한 경우 데이터 검증 도구를 사용하여 필터를 추가하여 런타임을 줄이거나 최종 유효성 검사를 위해 테이블의 하위 집합을 포함하도록 테이블 목록을 준비합니다.