AWS RDS 읽기 복제품:몇 개의 테이블과 열의 복제를 방지하려면 어떻게 해야 합니까?
저는 RDS MariaDB를 사용하고 있으며 분석에 사용할 수 있는 슬레이브 DB가 필요합니다.AWS Read Replica를 찾고 있지만 중요한 정보를 저장하는 몇 개의 테이블과 열의 복제를 건너뛸 수 있는 프로비저닝을 제공하지 않으므로 슬레이브 DB에 해당 정보를 포함시키고 싶지 않습니다.
AWS Read Replica를 사용하여 몇 개의 테이블과 열의 복제를 건너뛸 수 있습니까?또는 AWS Read Replica에서 이 정보를 Replica DB에서 삭제할 수 있는 AWS Lambda를 작성할 수 있습니까?
AWS Database Migration Service는 다음과 같은 경우에 사용할 수 있습니다.
- AWS 데이터베이스 마이그레이션 서비스를 사용하여 이기종 소스와 대상 데이터베이스 간에 지속적인 복제를 설정할 수 있습니다.
- AWS DMS는 소스 및 타깃 데이터베이스 모두에 대해 MariaDB를 지원합니다.
- AWS DMS는 소스 데이터베이스에서 테이블별 선택을 지원합니다.
- AWS DMS는 대상 데이터베이스로 변환하는 동안 열을 제거할 수 있습니다.
FAQ에 따르면:
Q. 지속적인 데이터 복제를 위해 일회성 데이터 마이그레이션 외에 AWS Database Migration Service를 사용할 수 있습니까?
예, AWS Database Migration Service는 RDS 및 EC2 기반 데이터베이스로의 일회성 데이터 마이그레이션뿐만 아니라 지속적인 데이터 복제에도 사용할 수 있습니다.AWS Database Migration Service는 소스 데이터베이스의 변경 사항을 캡처하여 트랜잭션별로 일관된 방식으로 대상에 적용합니다.데이터 센터에서 AWS의 데이터베이스로 연속 복제를 수행하거나 반대로 AWS의 데이터베이스에서 데이터 센터 데이터베이스로 복제할 수 있습니다.동종 또는 이종 데이터베이스 간에 지속적인 복제를 수행할 수도 있습니다.레플리케이션을 계속하는 경우는, 고가용성을 위해서 Multi-AZ 를 사용하는 것을 추천합니다.
AWS DMS에 익숙하지 않은 경우 공식 설명서 '시작하기' 페이지를 보고 아래를 계속하십시오.
소스와 동일한 스키마를 사용하여 대상 데이터베이스를 만듭니다.단, 채우지 않을 테이블과 열은 제외합니다.
원본 및 대상 데이터베이스를 DMS와 연결하면 테이블을 제외하거나 열을 제거하는 특정 테이블 매핑과 함께 마이그레이션을 수행하는 태스크를 작성할 수 있습니다.
테이블 제외
rule-action exclude를 사용하여 선택 규칙을 생성하고 제외할 테이블을 지정합니다.다음 문자로 시작하는 탭 이름을 가진 테이블을 제외한 모든 테이블을 마이그레이션하는 설명서의 예DMS%
:
{
"rules": [
{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "Test",
"table-name": "%"
},
"rule-action": "include"
},
{
"rule-type": "selection",
"rule-id": "2",
"rule-name": "2",
"object-locator": {
"schema-name": "Test",
"table-name": "DMS%"
},
"rule-action": "exclude"
}
]
}
컬럼 삭제
rule-action remove 및 rule-target any를 사용하여 제거할 열의 스키마, 테이블 및 열 이름을 지정하여 변환 규칙을 만듭니다.다음 예에서는 매뉴얼에서도 모든 열을 테스트에서 제거합니다.캐릭터로 시작하는 배우 테이블col
:
{
"rules": [{
"rule-type": "selection",
"rule-id": "1",
"rule-name": "1",
"object-locator": {
"schema-name": "test",
"table-name": "%"
},
"rule-action": "include"
}, {
"rule-type": "transformation",
"rule-id": "2",
"rule-name": "2",
"rule-action": "remove-column",
"rule-target": "column",
"object-locator": {
"schema-name": "test",
"table-name": "Actor",
"column-name": "col%"
}
}]
}
상세 정보
- AWS 데이터베이스 마이그레이션 서비스 FAQ
- AWS DMS 매뉴얼 - 데이터 선택 및 필터링 태스크에서의 테이블 매핑 사용
- AWS DMS 설명서 - MySQL 호환 데이터베이스를 AWS DMS 소스로 사용
- AWS DMS 설명서 - AWS DMS 작업
RDS 읽기 복제본은 읽기 전용입니다.이 복제본을 직접 수정할 수 없습니다.
더 나은 방법은 분석 사용자가 특정 테이블에 액세스할 수 없도록 적절한 테이블 및 열 수준 사용 권한을 생성하는 것입니다.
언급URL : https://stackoverflow.com/questions/47103576/aws-rds-read-replica-how-can-i-avoid-replication-of-few-tables-and-columns
'source' 카테고리의 다른 글
프로그래밍 방식으로 python.exe 위치를 가져오려면 어떻게 해야 합니까? (0) | 2022.10.29 |
---|---|
Panda Datetime 컬럼에서 월과 년만 추출 (0) | 2022.10.29 |
MariaDB에서 Mysql로 마이그레이션 - 중복 제약 조건 이름 (0) | 2022.10.29 |
Python 클래스를 동적으로 로드하는 방법 (0) | 2022.10.20 |
팬더 인덱스 컬럼 제목 또는 이름 (0) | 2022.10.20 |