2014-02-12 2 views
1

새 리소스 레코드를 만들려면 Amazon Route53에 적절한 요청을 설정했습니다. 이것은 완벽하게 작동합니다.Route53 API를 사용하여 레코드를 업데이트 할 수 없음

그러나 이제 그 레코드의 값을 변경하고 싶습니다. 새 값으로 다시 동일한 요청을하면 다음 메시지와 함께 예외가 발생합니다. 모두 요청에

리소스 레코드 집합을 만들려고 [이름 = 'my.test.domain을.'유형 = 'A'는] 하지만 이미 존재하는

, 내가 설정 한 유일한 대안으로 CREATE에 대한 Action 매개 변수는 DELETE입니다.

나는 당신의 권한이있는 DNS 정보를 만들거나 변경하려면이 작업을이 같은 설명의 시작 PHP SDK의 changeResourceRecordSets 방법, ...

사용을 사용하고 있습니다.

는 다른 곳에서 아마존 웹 서비스 설명서, 나는 또한 요청 값으로 아마존 경로를, 53 업데이트를 다음 코드 ...

리소스 레코드 집합이 존재하는 경우를 발견했다. Amazon Route 53는 이름, Type 및 SetIdentifier (지연 시간, 가중치 및 장애 조치 리소스 레코드 세트의 경우)와 일치하는 경우에만 기존의 리소스 레코드 세트를 업데이트 할 수 있습니다.

이 내가SetIdentifier 매개 변수가 필요 의미 하는가? 이것들은 대기 시간, 가중치 또는 오류 복구 기록이기 때문에 그럴 필요가 없습니다. 아니면 이런 식으로 업데이트 할 수있는 유일한 기록입니까?

답변

3

대답은 UPSERT 동작을 사용하는 것입니다. 이 작업은 PHP SDK에 대해서는 설명되어 있지 않지만 존재합니다.

UPSERT은 레코드가있는 경우 레코드를 업데이트하거나 레코드가없는 경우 레코드를 만듭니다.

관련 문제