리전 | 엔드포인트 |
---|---|
한국(판교) 리전 | https://kr1-rds-mysql.api.gov-nhncloudservice.com |
한국(평촌) 리전 | https://kr2-rds-mysql.api.gov-nhncloudservice.com |
API를 사용하려면 인증에 필요한 User Access Key ID
와 Secret Access Key
가 필요합니다. 콘솔 우측 상단의 계정에 마우스 포인터를 올리면 표시되는 드롭다운 메뉴에서 API 보안 설정을 선택해 생성할 수 있습니다.
생성된 Key는 Appkey와 함께 요청 Header에 포함해야 합니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
X-TC-APP-KEY | Header | String | O | RDS for MySQL 서비스의 Appkey 또는 프로젝트 통합 Appkey |
X-TC-AUTHENTICATION-ID | Header | String | O | API 보안 설정 메뉴의 User Access Key ID |
X-TC-AUTHENTICATION-SECRET | Header | String | O | API 보안 설정 메뉴의 Secret Access Key |
또한 프로젝트 멤버 역할에 따라 호출할 수 있는 API가 제한됩니다. RDS for MySQL ADMIN
, RDS for MySQL VIEWER
로 구분하여 권한을 부여할 수 있습니다.
RDS for MySQL ADMIN
권한은 모든 기능을 사용 가능합니다.RDS for MySQL VIEWER
권한은 정보를 조회하는 기능만 사용 가능합니다.API 요청 시 인증에 실패하거나 권한이 없을 경우 다음과 같은 오류가 발생합니다.
resultCode | resultMessage | 설명 |
---|---|---|
80401 | Unauthorized | 인증에 실패했습니다. |
80403 | Forbidden | 권한이 없습니다. |
모든 API 요청에 '200 OK'로 응답합니다. 자세한 응답 결과는 응답 본문의 헤더를 참고합니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
이름 | 형식 | 설명 |
---|---|---|
resultCode | Number | 결과 코드 - 성공: 0 - 실패: 0 이 아닌 값 |
resultMessage | String | 결과 메시지 |
isSuccessful | Boolean | 성공 여부 |
DB 엔진 유형 | 생성 가능 여부 | OBS로부터 복원 가능 여부 |
---|---|---|
MYSQL_V5633 | X | X |
MYSQL_V5715 | O | O |
MYSQL_V5719 | O | O |
MYSQL_V5726 | O | O |
MYSQL_V5731 | X | X |
MYSQL_V5733 | O | X |
MYSQL_V5737 | O | O |
MYSQL_V8018 | O | O |
MYSQL_V8023 | O | O |
MYSQL_V8028 | O | O |
MYSQL_V8032 | O | O |
MYSQL_V8033 | O | O |
MYSQL_V8034 | O | O |
GET /v3.0/project/regions
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
regions | Body | Array | 리전 목록 |
regions.regionCode | Body | Enum | 리전 코드 - KR1 : 한국(판교) 리전- KR2 : 한국(평촌) 리전- JP1 : 일본(도쿄) 리전 |
regions.isEnabled | Body | Boolean | 리전의 활성화 여부 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"regions": [
{
"regionCode": "KR1",
"isEnabled": true
},
{
"regionCode": "KR2",
"isEnabled": true
},
{
"regionCode": "JP1",
"isEnabled": true
}
]
}
GET /v3.0/project/members
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
members | Body | Array | 프로젝트 멤버 목록 |
members.memberId | Body | UUID | 프로젝트 멤버의 식별자 |
members.memberName | Body | String | 프로젝트 멤버의 이름 |
members.emailAddress | Body | String | 프로젝트 멤버의 이메일 주소 |
members.phoneNumber | Body | String | 프로젝트 멤버의 전화번호 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"members": [
{
"memberId": "1b1d3627-507a-49ea-8cb7-c86dfa9caa58",
"memberName": "홍길동",
"emailAddress": "gildong.hong@nhn.com",
"phoneNumber": "+821012345678"
}
]
}
GET /v3.0/db-flavors
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbFlavors | Body | Array | DB 인스턴스 사양 목록 |
dbFlavors.dbFlavorId | Body | UUID | DB 인스턴스 사양의 식별자 |
dbFlavors.dbFlavorName | Body | String | DB 인스턴스 사양 이름 |
dbFlavors.ram | Body | Number | 메모리 용량(MB) |
dbFlavors.vcpus | Body | Number | CPU 코어 수 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbFlavors": [
{
"dbFlavorId": "50be6d9c-02d6-4594-a2d4-12010eb65ec0",
"dbFlavorName": "m2.c1m2",
"ram": 2048,
"vcpus": 1
}
]
}
GET /v3.0/network/subnets
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
subnets | Body | Array | 서브넷 목록 |
subnets.subnetId | Body | UUID | 서브넷의 식별자 |
subnets.subnetName | Body | String | 서브넷을 식별할 수 있는 이름 |
subnets.subnetCidr | Body | String | 서브넷의 CIDR |
subnets.usingGateway | Body | Boolean | 게이트웨이 사용 여부 |
subnets.availableIpCount | Body | Number | 사용 가능한 IP 수 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"subnets": [
{
"subnetId": "1b2a9b23-0725-4b92-8c78-35db66b8ad9f",
"subnetName": "Default Network",
"subnetCidr": "192.168.0.0/24",
"usingGateway": true,
"availableIpCount": 240
}
]
}
GET /v3.0/db-versions
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbVersions | Body | Array | DB 엔진 목록 |
dbVersions.dbVersion | Body | String | DB 엔진 유형 |
dbVersions.dbVersionName | Body | String | DB 엔진 이름 |
dbVersions.restorableFromObs | Body | Boolean | 오브젝트 스토리지로부터 복원 가능 여부 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbVersions": [
{
"dbVersion": "MYSQL_V8028",
"dbVersionName": "MySQL 8.0.28",
"restorableFromObs": true
}
]
}
GET /v3.0/storage-types
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
storageTypes | Body | Array | 데이터 스토리지 타입 목록 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"storageTypes": [
"General SSD",
"General HDD"
]
}
GET /v3.0/storages
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
storages | Body | Array | 데이터 스토리지 목록 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"storages": [
"General SSD",
"General HDD"
]
}
상태명 | 설명 |
---|---|
PREPARING |
작업이 준비 중인 경우 |
READY |
작업이 준비 완료된 경우 |
RUNNING |
작업이 진행 중인 경우 |
COMPLETED |
작업이 완료된 경우 |
REGISTERED |
작업이 등록된 경우 |
WAIT_TO_REGISTER |
작업 등록 대기 중인 경우 |
INTERRUPTED |
작업 진행 중 인터럽트가 발생한 경우 |
CANCELED |
작업이 취소된 경우 |
FAILED |
작업이 실패한 경우 |
ERROR |
작업 진행 중 오류가 발생한 경우 |
DELETED |
작업이 삭제된 경우 |
FAIL_TO_READY |
작업 준비에 실패한 경우 |
GET /v3.0/jobs/{jobId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
jobId | URL | UUID | O | 작업의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 작업의 식별자 |
jobStatus | Body | Enum | 작업의 현재 상태 |
resourceRelations | Body | Array | 연관 리소스 목록 |
resourceRelations.resourceType | Body | Enum | 연관 리소스 유형 |
resourceRelations.resourceId | Body | UUID | 연관 리소스의 식별자 |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"jobId": "0ddb042c-5af6-43fb-a914-f4dd0540eb7c",
"jobStatus": "RUNNING",
"resourceRelations": [
{
"resourceType": "INSTANCE",
"resourceId": "56b39dcf-65eb-47ec-9d4f-09f160ba2266"
}
],
"createdYmdt": "2023-02-22T20:47:12+09:00",
"updatedYmdt": "2023-02-22T20:49:46+09:00"
}
GET /v3.0/db-instance-groups
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbInstanceGroups | Body | Array | DB 인스턴스 그룹 목록 |
dbInstanceGroups.dbInstanceGroupId | Body | UUID | DB 인스턴스 그룹의 식별자 |
dbInstanceGroups.replicationType | Body | Enum | DB 인스턴스 그룹의 복제 형태 - STANDALONE : 단일- HIGH_AVAILABILITY : 고가용성 |
dbInstanceGroups.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
dbInstanceGroups.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbInstanceGroups": [
{
"dbInstanceGroupId": "05de0746-89fd-49c8-94f9-9c5b1df97009",
"replicationType": "STANDALONE",
"createdYmdt": "2023-02-13T17:35:20+09:00",
"updatedYmdt": "2023-02-13T17:35:20+09:00"
}
]
}
GET /v3.0/db-instance-groups/{dbInstanceGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceGroupId | URL | UUID | O | DB 인스턴스 그룹의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbInstanceGroupId | Body | UUID | DB 인스턴스 그룹의 식별자 |
replicationType | Body | Enum | DB 인스턴스 그룹의 복제 형태 - STANDALONE : 단일- HIGH_AVAILABILITY : 고가용성 |
dbInstances | Body | Array | DB 인스턴스 그룹에 속한 DB 인스턴스 목록 |
dbInstances.dbInstanceId | Body | UUID | DB 인스턴스의 식별자 |
dbInstances.dbInstanceType | Body | Enum | DB 인스턴스의 역할 타입 - MASTER : 마스터- FAILED_MASTER : 장애 조치된 마스터- CANDIDATE_MASTER : 예비 마스터- READ_ONLY_SLAVE : 읽기 복제본 |
dbInstances.dbInstanceStatus | Body | Enum | DB 인스턴스의 현재 상태 |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbInstanceGroupId": "36617a8e-0df8-4b16-b6ea-6306019e95da",
"replicationType": "STANDALONE",
"dbInstances": [
{
"dbInstanceId": "6d2db0ef-fe9b-4ed4-97b1-d97fcb4cf1b8",
"dbInstanceType": "MASTER",
"dbInstanceStatus": "AVAILABLE"
}
],
"createdYmdt": "2023-03-03T17:38:14+09:00",
"updatedYmdt": "2023-03-03T17:38:14+09:00"
}
상태 | 설명 |
---|---|
AVAILABLE |
DB 인스턴스가 사용 가능한 경우 |
BEFORE_CREATE |
DB 인스턴스가 생성 전인 경우 |
STORAGE_FULL |
DB 인스턴스의 용량이 부족한 경우 |
FAIL_TO_CREATE |
DB 인스턴스 생성에 실패한 경우 |
FAIL_TO_CONNECT |
DB 인스턴스 연결에 실패한 경우 |
REPLICATION_STOP |
DB 인스턴스의 복제가 중단된 경우 |
FAILOVER |
DB 인스턴스가 고가용성 장애 조치된 경우 |
SHUTDOWN |
DB 인스턴스가 중지된 경우 |
DELETED |
DB 인스턴스가 삭제된 경우 |
상태 | 설명 |
---|---|
APPLYING_PARAMETER_GROUP |
파라미터 그룹 적용 중 |
BACKING_UP |
백업 중 |
CANCELING |
취소 중 |
CREATING |
생성 중 |
CREATING_SCHEMA |
DB 스키마 생성 중 |
CREATING_USER |
사용자 생성 중 |
DELETING |
삭제 중 |
DELETING_SCHEMA |
DB 스키마 삭제 중 |
DELETING_USER |
사용자 삭제 중 |
EXPORTING_BACKUP |
백업을 내보내는 중 |
FAILING_OVER |
장애 조치 중 |
MIGRATING |
마이그레이션 중 |
MODIFYING |
수정 중 |
PREPARING |
준비 중 |
PROMOTING |
승격 중 |
REBUILDING |
재구축 중 |
REPAIRING |
복구 중 |
REPLICATING |
복제 중 |
RESTARTING |
재시작 중 |
RESTARTING_FORCIBLY |
강제 재시작 중 |
RESTORING |
복원 중 |
STARTING |
시작 중 |
STOPPING |
정지 중 |
SYNCING_SCHEMA |
DB 스키마 동기화 중 |
SYNCING_USER |
사용자 동기화 중 |
UPDATING_USER |
사용자 수정 중 |
GET /v3.0/db-instances
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbInstances | Body | Array | DB 인스턴스 목록 |
dbInstances.dbInstanceId | Body | UUID | DB 인스턴스의 식별자 |
dbInstances.dbInstanceGroupId | Body | UUID | DB 인스턴스 그룹의 식별자 |
dbInstances.dbInstanceName | Body | String | DB 인스턴스를 식별할 수 있는 이름 |
dbInstances.description | Body | String | DB 인스턴스에 대한 추가 정보 |
dbInstances.dbVersion | Body | Enum | DB 엔진 유형 |
dbInstances.dbPort | Body | Number | DB 포트 |
dbInstances.dbInstanceType | Body | Enum | DB 인스턴스의 역할 타입 - MASTER : 마스터- FAILED_MASTER : 장애 조치된 마스터- CANDIDATE_MASTER : 예비 마스터- READ_ONLY_SLAVE : 읽기 복제본 |
dbInstances.dbInstanceStatus | Body | Enum | DB 인스턴스의 현재 상태 |
dbInstances.progressStatus | Body | Enum | DB 인스턴스의 현재 진행 상태 |
dbInstances.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
dbInstances.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbInstances": [
{
"dbInstanceId": "d067593b-1acc-4ccc-9e8a-cc72d6d79ec3",
"dbInstanceGroupId": "51c7d080-ff36-4025-84b1-9d9d0b4fe9e0",
"dbInstanceName": "db-instance",
"description": null,
"dbVersion": "MYSQL_V8028",
"dbPort": 10000,
"dbInstanceType": "MASTER",
"dbInstanceStatus": "AVAILABLE",
"progressStatus": "NONE",
"createdYmdt": "2023-01-23T12:03:13+09:00",
"updatedYmdt": "2023-02-02T17:20:17+09:00"
}
]
}
GET /v3.0/db-instances/{dbInstanceId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbInstanceId | Body | UUID | DB 인스턴스의 식별자 |
dbInstanceGroupId | Body | UUID | DB 인스턴스 그룹의 식별자 |
dbInstanceName | Body | String | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | DB 인스턴스에 대한 추가 정보 |
dbVersion | Body | Enum | DB 엔진 유형 |
dbPort | Body | Number | DB 포트 |
dbInstanceType | Body | Enum | DB 인스턴스의 역할 타입 - MASTER : 마스터- FAILED_MASTER : 장애 조치된 마스터- CANDIDATE_MASTER : 예비 마스터- READ_ONLY_SLAVE : 읽기 복제본 |
dbInstanceStatus | Body | Enum | DB 인스턴스의 현재 상태 |
progressStatus | Body | Enum | DB 인스턴스의 현재 작업 진행 상태 |
dbFlavorId | Body | UUID | DB 인스턴스 사양의 식별자 |
parameterGroupId | Body | UUID | DB 인스턴스에 적용된 파라미터 그룹의 식별자 |
dbSecurityGroupIds | Body | Array | DB 인스턴스에 적용된 DB 보안 그룹의 식별자 목록 |
notificationGroupIds | Body | Array | DB 인스턴스에 적용된 알림 그룹의 식별자 목록 |
useDeletionProtection | Body | Boolean | DB 인스턴스 삭제 보호 여부 |
supportAuthenticationPlugin | Body | Boolean | 인증 플러그인 지원 여부 |
needToApplyParameterGroup | Body | Boolean | 최신 파라미터 그룹 적용 필요 여부 |
needMigration | Body | Boolean | 마이그레이션 필요 여부 |
supportDbVersionUpgrade | Body | Boolean | DB 버전 업그레이드 지원 여부 |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbInstanceId": "d067593b-1acc-4ccc-9e8a-cc72d6d79ec3",
"dbInstanceGroupId": "51c7d080-ff36-4025-84b1-9d9d0b4fe9e0",
"dbInstanceName": "db-instance",
"description": null,
"dbVersion": "MYSQL_V8028",
"dbPort": 10000,
"dbInstanceType": "MASTER",
"dbInstanceStatus": "AVAILABLE",
"progressStatus": "NONE",
"dbFlavorId": "e9ed4ef6-78d7-46fa-ace9-32481e97f3b7",
"parameterGroupId": "b03e8b13-de27-4d04-a488-ff5689589372",
"dbSecurityGroupIds": ["01908c35-d2c9-4852-baf0-17f06ec42c03"],
"notificationGroupIds": ["83a62a33-ddbf-4a04-8653-e54463d5b1ac"],
"useDeletionProtection": false,
"supportAuthenticationPlugin": true,
"needToApplyParameterGroup": false,
"needMigration": false,
"supportDbVersionUpgrade": true,
"createdYmdt": "2022-11-23T12:03:13+09:00",
"updatedYmdt": "2022-12-02T17:20:17+09:00"
}
POST /v3.0/db-instances
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceName | Body | String | O | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | X | DB 인스턴스에 대한 추가 정보 |
dbFlavorId | Body | UUID | O | DB 인스턴스 사양의 식별자 |
dbVersion | Body | Enum | O | DB 엔진 유형 |
dbPort | Body | Number | O | DB 포트 - 최솟값: 3306 - 최댓값: 43306 |
dbUserName | Body | String | O | DB 사용자 계정명 |
dbPassword | Body | String | O | DB 사용자 계정 암호 - 최소 길이: 4 - 최대 길이: 16 |
parameterGroupId | Body | UUID | O | 파라미터 그룹의 식별자 |
dbSecurityGroupIds | Body | Array | X | DB 보안 그룹의 식별자 목록 |
userGroupIds | Body | Array | X | 사용자 그룹의 식별자 목록 |
useHighAvailability | Body | Boolean | X | 고가용성 사용 여부 - 기본값: false |
pingInterval | Body | Number | X | 고가용성 사용 시 Ping 간격(초) - 기본값: 3 - 최솟값: 1 - 최댓값: 600 |
useDefaultNotification | Body | Boolean | X | 기본 알림 사용 여부 - 기본값: false |
useDeletionProtection | Body | Boolean | X | 삭제 보호 여부 - 기본값: false |
network | Body | Object | O | 네트워크 정보 객체 |
network.subnetId | Body | UUID | O | 서브넷의 식별자 |
network.usePublicAccess | Body | Boolean | X | 외부 접속 가능 여부 - 기본값: false |
network.availabilityZone | Body | Enum | O | DB 인스턴스를 생성할 가용성 영역 - 예시: kr-pub-a |
storage | Body | Object | O | 데이터 스토리지 정보 객체 |
storage.storageType | Body | Enum | O | 데이터 스토리지 타입 - 예시: General SSD |
storage.storageSize | Body | Number | O | 데이터 스토리지 크기(GB) - 최솟값: 20 - 최댓값: 2048 |
backup | Body | Object | O | 백업 정보 객체 |
backup.backupPeriod | Body | Number | O | 백업 보관 기간(일) - 최솟값: 0 - 최댓값: 730 |
backup.ftwrlWaitTimeout | Body | Number | X | 쿼리 지연 대기 시간(초) - 기본값: 1800 - 최솟값: 0 - 최댓값: 21600 |
backup.backupRetryCount | Body | Number | X | 백업 재시도 횟수 - 기본값: 0 - 최솟값: 0 - 최댓값: 10 |
backup.replicationRegion | Body | Enum | X | 백업 복제 리전 - KR1 : 한국(판교)- KR2 : 한국(평촌)- JP1 : 일본(도쿄) |
backup.useBackupLock | Body | Boolean | X | 테이블 잠금 사용 여부 - 기본값: true |
backup.backupSchedules | Body | Array | O | 백업 스케줄 목록 |
backup.backupSchedules.backupWndBgnTime | Body | String | O | 백업 시작 시각 - 예시: 00:00:00 |
backup.backupSchedules.backupWndDuration | Body | Enum | O | 백업 Duration 백업 시작 시각부터 Duration 안에 자동 백업이 실행됩니다. - HALF_AN_HOUR : 30분- ONE_HOUR : 1시간- ONE_HOUR_AND_HALF : 1시간 30분- TWO_HOURS : 2시간- TWO_HOURS_AND_HALF : 2시간 30분- THREE_HOURS : 3시간 |
backup.backupSchedules.backupRetryExpireTime | Body | String | O | 백업 재시도 만료 시각 - 백업 재시도 만료 시각은 백업 시작 시각 이전이거나 이후여야 합니다. - 예시: 01:30:00 |
{
"dbInstanceName": "db-instance",
"description": "description",
"dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
"dbVersion": "MYSQL_V8028",
"dbPort": 10000,
"dbUserName": "db-user",
"dbPassword": "password",
"parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
"dbSecurityGroupIds": [
"b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
],
"userGroupIds": [],
"network": {
"subnetId": "e721a9dd-dad0-4cf0-a53b-dd654ebfc683",
"availabilityZone": "kr-pub-a"
},
"storage": {
"storageType": "General SSD",
"storageSize": 20
},
"backup": {
"backupPeriod": 1,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "ONE_HOUR",
"backupRetryExpireTime": "01:30:00"
}
]
}
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
PUT /v3.0/db-instances/{dbInstanceId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbInstanceName | Body | String | X | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | X | DB 인스턴스에 대한 추가 정보 |
dbPort | Body | Number | X | DB 포트 - 최솟값: 3306 - 최댓값: 43306 |
dbVersion | Body | Enum | X | DB 엔진 유형 |
useDummy | Body | Boolean | X | 단일 DB 인스턴스의 DB 버전 업그레이드 시 더미 사용 여부 기본값: false |
dbFlavorId | Body | UUID | X | DB 인스턴스 사양의 식별자 |
parameterGroupId | Body | UUID | X | 파라미터 그룹의 식별자 |
dbSecurityGroupIds | Body | Array | X | DB 보안 그룹의 식별자 목록 |
executeBackup | Body | Boolean | X | 현재 시점 백업 진행 여부 - 기본값: false |
useOnlineFailover | Body | Boolean | X | 장애 조치를 이용한 재시작 여부 고가용성을 사용 중인 DB 인스턴스에서만 사용 가능합니다. - 기본값: false |
{
"dbInstanceName": "db-instance2",
"description": "description2",
"dbPort": 10001,
"dbSecurityGroupIds": [],
"executeBackup": true
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
DELETE /v3.0/db-instances/{dbInstanceId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/restart
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
useOnlineFailover | Body | Boolean | X | 장애 조치를 이용한 재시작 여부 고가용성을 사용 중인 DB 인스턴스에서만 사용 가능합니다. - 기본값: false |
executeBackup | Body | Boolean | X | 현재 시점 백업 진행 여부 - 기본값: false |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/force-restart
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
POST /v3.0/db-instances/{dbInstanceId}/start
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/stop
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/backup
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
backupName | Body | String | O | 백업을 식별할 수 있는 이름 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/backup-to-object-storage
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
tenantId | Body | String | O | 백업이 저장될 오브젝트 스토리지의 테넌트 ID |
username | Body | String | O | NHN Cloud 회원 또는 IAM 멤버 ID |
password | Body | String | O | 백업이 저장될 오브젝트 스토리지의 API 비밀번호 |
targetContainer | Body | String | O | 백업이 저장될 오브젝트 스토리지의 컨테이너 |
objectPath | Body | String | O | 컨테이너에 저장될 백업의 경로 |
{
"tenantId": "399631c404744dbbb18ce4fa2dc71a5a",
"username": "gildong.hong@nhn.com",
"password": "password",
"targetContainer": "/container",
"objectPath": "/backups/backup_file"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/replicate
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbInstanceName | Body | String | O | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | X | DB 인스턴스에 대한 추가 정보 |
dbFlavorId | Body | UUID | X | DB 인스턴스 사양의 식별자 - 기본값: 원본 DB 인스턴스 값 |
dbPort | Body | Number | X | DB 포트 - 기본값: 원본 DB 인스턴스 값 - 최솟값: 3306 - 최댓값: 43306 |
parameterGroupId | Body | UUID | X | 파라미터 그룹의 식별자 - 기본값: 원본 DB 인스턴스 값 |
dbSecurityGroupIds | Body | Array | X | DB 보안 그룹의 식별자 목록 - 기본값: 원본 DB 인스턴스 값 |
userGroupIds | Body | Array | X | 사용자 그룹의 식별자 목록 |
useDefaultNotification | Body | Boolean | X | 기본 알림 사용 여부 - 기본값: false |
useDeletionProtection | Body | Boolean | X | 삭제 보호 여부 - 기본값: false |
network | Body | Object | O | 네트워크 정보 객체 |
network.usePublicAccess | Body | Boolean | X | 외부 접속 가능 여부 - 기본값: 원본 DB 인스턴스 값 |
network.availabilityZone | Body | Enum | O | DB 인스턴스를 생성할 가용성 영역 - 예시: kr-pub-a |
storage | Body | Object | X | 데이터 스토리지 정보 객체 |
storage.storageType | Body | Enum | X | 데이터 스토리지 타입
|
storage.storageSize | Body | Number | X | 데이터 스토리지 크기(GB) - 기본값: 원본 DB 인스턴스 값 - 최솟값: 20 - 최댓값: 2048 |
backup | Body | Object | X | 백업 정보 객체 |
backup.backupPeriod | Body | Number | X | 백업 보관 기간(일) - 기본값: 원본 DB 인스턴스 값 - 최솟값: 0 - 최댓값: 730 |
backup.ftwrlWaitTimeout | Body | Number | X | 쿼리 지연 대기 시간(초) - 기본값: 원본 DB 인스턴스 값 - 최솟값: 0 - 최댓값: 21600 |
backup.backupRetryCount | Body | Number | X | 백업 재시도 횟수 - 기본값: 원본 DB 인스턴스 값 - 최솟값: 0 - 최댓값: 10 |
backup.replicationRegion | Body | Enum | X | 백업 복제 리전 - KR1 : 한국(판교)- KR2 : 한국(평촌)- JP1 : 일본(도쿄)- 기본값: 원본 DB 인스턴스 값 |
backup.useBackupLock | Body | Boolean | X | 테이블 잠금 사용 여부 - 기본값: 원본 DB 인스턴스 값 |
backup.backupSchedules | Body | Array | X | 백업 스케줄 목록 |
backup.backupSchedules.backupWndBgnTime | Body | String | X | 백업 시작 시각 - 예시: 00:00:00 - 기본값: 원본 DB 인스턴스 값 |
backup.backupSchedules.backupWndDuration | Body | Enum | X | 백업 Duration 백업 시작 시각부터 Duration 안에 자동 백업이 실행됩니다. - HALF_AN_HOUR : 30분- ONE_HOUR : 1시간- ONE_HOUR_AND_HALF : 1시간 30분- TWO_HOURS : 2시간- TWO_HOURS_AND_HALF : 2시간 30분- THREE_HOURS : 3시간- 기본값: 원본 DB 인스턴스 값 |
backup.backupSchedules.backupRetryExpireTime | Body | String | X | 백업 재시도 만료 시각 - 백업 재시도 만료 시각은 백업 시작 시각 이전이거나 이후여야 합니다. - 예시: 01:30:00 - 기본값: 원본 DB 인스턴스 값 |
{
"dbInstanceName": "db-instance-replicate",
"description": "description",
"dbPort": 11000,
"network": {
"availabilityZone": "kr-pub-a"
},
"storage": {
"stroageSize": 100
}
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/promote
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/db-instances/{dbInstanceId}/restoration-info
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
oldestRestorableYmdt | Body | DateTime | 가장 오래된 복원 가능한 시각 |
latestRestorableYmdt | Body | DateTime | 가장 최신의 복원 가능한 시각 |
restorableBackups | Body | Array | 복원 가능한 백업 목록 |
restorableBackups.backup | Body | Object | 백업 정보 객체 |
restorableBackups.backup.backupId | Body | UUID | 백업의 식별자 |
restorableBackups.backup.backupName | Body | String | 백업 이름 |
restorableBackups.backup.useBackupLock | Body | Boolean | 테이블 잠금 사용 여부 |
restorableBackups.backup.backupSize | Body | Number | 백업 크기 |
restorableBackups.backup.backupType | Body | Enum | 백업 유형
|
restorableBackups.backup.backupStatus | Body | Enum | 백업 상태
|
restorableBackups.backup.dbInstanceId | Body | UUID | 원본 DB 인스턴스의 식별자 |
restorableBackups.backup.dbInstanceName | Body | String | 원본 DB 인스턴스의 이름 |
restorableBackups.backup.dbVersion | Body | String | DB 엔진 유형 |
restorableBackups.backup.failoverCount | Body | Number | 장애 조치 횟수 |
restorableBackups.backup.binLogFileName | Body | String | 바이너리 로그 파일 이름 |
restorableBackups.backup.binLogPosition | Body | Number | 바이너리 로그 파일 위치 |
restorableBackups.backup.createdYmdt | Body | DateTime | 백업 생성 일시 |
restorableBackups.backup.updatedYmdt | Body | DateTime | 백업 갱신 일시 |
restorableBackups.restorableBinLogs | Body | Array | 해당 백업을 이용하여 복원 가능한 바이너리 로그 이름 목록 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"oldestRestorableYmdt": "2023-07-09T16:33:33+09:00",
"latestRestorableYmdt": "2023-07-10T15:44:44+09:00",
"restorableBackups": [
{
"backup": {
"backupId": "145d889a-fe08-474f-8f58-bde576ff96a9",
"backupName": "example-backup-name",
"backupStatus": "COMPLETED",
"dbInstanceId": "dba1be25-9429-4589-9716-7fb6daad7cb9",
"dbInstanceName": "original-db-instance-name",
"dbVersion": "MYSQL_V8032",
"backupType": "MANUAL",
"backupSize": 8299904,
"useBackupLock": true,
"failoverCount": 0,
"binLogFileName": "mysql-bin.000001",
"binLogPosition": 367916037,
"createdYmdt": "2023-07-10T15:44:44+09:00",
"updatedYmdt": "2023-07-10T15:46:07+09:00"
},
"restorableBinLogs": [
"mysql-bin.000001"
]
}
]
}
GET /v3.0/db-instances/{dbInstanceId}/restoration-info/last-query
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
restoreType | Query | Enum | O | 복원 타입 종류
|
TIMESTAMP
인 경우이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
restoreYmdt | Query | DateTime | O | DB 인스턴스 복원 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
BINLOG
인 경우이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
backupId | Query | UUID | O | 복원에 사용할 백업의 식별자 |
binLogFileName | Query | String | O | 복원에 사용할 바이너리 로그 이름 |
binLogPosition | Query | Number | O | 복원에 사용할 바이너리 로그 위치 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
executedYmdt | Body | DateTime | 쿼리 수행 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
lastQuery | Body | String | 마지막 수행 쿼리 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"executedYmdt": "2023-03-17T14:02:29+09:00",
"lastQuery": "INSERT INTO `test`.`test`SET @1='0123'"
}
POST /v3.0/db-instances/{dbInstanceId}/restore
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
restore | Body | Object | O | 복원 정보 객체 |
restore.restoreType | Body | Enum | O | 복원 타입 종류
|
dbInstanceName | Body | String | O | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | X | DB 인스턴스에 대한 추가 정보 |
dbFlavorId | Body | UUID | O | DB 인스턴스 사양의 식별자 |
dbPort | Body | Number | O | DB 포트
|
parameterGroupId | Body | UUID | O | 파라미터 그룹의 식별자 |
dbSecurityGroupIds | Body | Array | X | DB 보안 그룹의 식별자 목록 |
userGroupIds | Body | Array | X | 사용자 그룹의 식별자 목록 |
useHighAvailability | Body | Boolean | X | 고가용성 사용 여부
|
pingInterval | Body | Number | X | 고가용성 사용 시 Ping 간격(초)
|
useDefaultNotification | Body | Boolean | X | 기본 알림 사용 여부
|
network | Body | Object | O | 네트워크 정보 객체 |
network.subnetId | Body | UUID | O | 서브넷의 식별자 |
network.usePublicAccess | Body | Boolean | X | 외부 접속 가능 여부
|
network.availabilityZone | Body | Enum | O | DB 인스턴스를 생성할 가용성 영역
|
storage | Body | Object | O | 데이터 스토리지 정보 객체 |
storage.storageType | Body | Enum | O | 데이터 스토리지 타입
|
storage.storageSize | Body | Number | O | 데이터 스토리지 크기(GB)
|
backup | Body | Object | O | 백업 정보 객체 |
backup.backupPeriod | Body | Number | O | 백업 보관 기간(일)
|
backup.ftwrlWaitTimeout | Body | Number | X | 쿼리 지연 대기 시간(초)
|
backup.backupRetryCount | Body | Number | X | 백업 재시도 횟수
|
backup.replicationRegion | Body | Enum | X | 백업 복제 리전
|
backup.useBackupLock | Body | Boolean | X | 테이블 잠금 사용 여부
|
backup.backupSchedules | Body | Array | O | 백업 스케줄 목록 |
backup.backupSchedules.backupWndBgnTime | Body | String | O | 백업 시작 시각
|
backup.backupSchedules.backupWndDuration | Body | Enum | O | 백업 Duration 백업 시작 시각부터 Duration 안에 자동 백업이 실행됩니다.
|
backup.backupSchedules.backupRetryExpireTime | Body | String | O | 백업 재시도 만료 시각
|
useDeletionProtection | Body | Boolean | X | 삭제 보호 여부 기본값: false |
TIMESTAMP
인 경우)이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
restore.restoreYmdt | Body | DateTime | O | DB 인스턴스 복원 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) 복원 정보 조회로 조회한 가장 최신의 복원 가능한 시간 이전에 대해서만 복원이 가능하다. |
{
"dbInstanceName": "db-instance",
"description": "description",
"dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
"dbPort": 10000,
"dbUserName": "db-user",
"dbPassword": "password",
"parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
"dbSecurityGroupIds": [
"b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
],
"userGroupIds": [],
"network": {
"subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
"availabilityZone": "kr-pub-a"
},
"storage": {
"storageType": "General SSD",
"storageSize": 20
},
"restore": {
"restoreType": "TIMESTAMP",
"restoreYmdt": "2023-07-10T15:44:44+09:00"
},
"backup": {
"backupPeriod": 1,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "ONE_HOUR_AND_HALF",
"backupRetryExpireTime": "01:30:00"
}
]
}
}
BINLOG
인 경우)이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
restore.backupId | Body | UUID | O | 복원에 사용할 백업의 식별자 |
restore.binLog | Body | Object | O | 바이너리 로그 정보 객체 |
restore.binLog.binLogFileName | Body | String | O | 복원에 사용할 바이너리 로그 이름 |
restore.binLog.binLogPosition | Body | Number | O | 복원에 사용할 바이너리 로그 위치 |
{
"dbInstanceName": "db-instance",
"description": "description",
"dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
"dbPort": 10000,
"dbUserName": "db-user",
"dbPassword": "password",
"parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
"dbSecurityGroupIds": [
"b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
],
"userGroupIds": [],
"network": {
"subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
"availabilityZone": "kr-pub-a"
},
"storage": {
"storageType": "General SSD",
"storageSize": 20
},
"restore": {
"restoreType": "BINLOG",
"backupId":"3ae7914f-9b42-4729-b125-87417b72cf36",
"binLogFileName": "mysql-bin.000001",
"binLogPosition": 1234567
},
"backup": {
"backupPeriod": 1,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "ONE_HOUR_AND_HALF",
"backupRetryExpireTime": "01:30:00"
}
]
}
}
BACKUP
인 경우)이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
restore.backupId | Body | UUID | O(restoreType이 BACKUP 인 경우) |
복원에 사용할 백업의 식별자 |
{
"dbInstanceName": "db-instance",
"description": "description",
"dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
"dbPort": 10000,
"dbUserName": "db-user",
"dbPassword": "password",
"parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
"dbSecurityGroupIds": [
"b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
],
"userGroupIds": [],
"network": {
"subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
"availabilityZone": "kr-pub-a"
},
"storage": {
"storageType": "General SSD",
"storageSize": 20
},
"restore": {
"restoreType": "BACKUP",
"backupId":"3ae7914f-9b42-4729-b125-87417b72cf36"
},
"backup": {
"backupPeriod": 1,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "ONE_HOUR_AND_HALF",
"backupRetryExpireTime": "01:30:00"
}
]
}
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/restore-from-obs
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
restore | Body | Object | O | 복원 정보 객체 |
restore.tenantId | Body | String | O | 백업이 저장된 오브젝트 스토리지의 테넌트 ID |
restore.username | Body | String | O | NHN Cloud 회원 또는 IAM 멤버 ID |
restore.password | Body | String | O | 백업이 저장된 오브젝트 스토리지의 API 비밀번호 |
restore.targetContainer | Body | String | O | 백업이 저장된 오브젝트 스토리지의 컨테이너 |
restore.objectPath | Body | String | O | 컨테이너에 저장된 백업의 경로 |
dbVersion | Body | Enum | O | DB 엔진 유형 |
dbInstanceName | Body | String | O | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | X | DB 인스턴스에 대한 추가 정보 |
dbFlavorId | Body | UUID | O | DB 인스턴스 사양의 식별자 |
dbPort | Body | Number | O | DB 포트
|
parameterGroupId | Body | UUID | O | 파라미터 그룹의 식별자 |
dbSecurityGroupIds | Body | Array | X | DB 보안 그룹의 식별자 목록 |
userGroupIds | Body | Array | X | 사용자 그룹의 식별자 목록 |
useHighAvailability | Body | Boolean | X | 고가용성 사용 여부
|
pingInterval | Body | Number | X | 고가용성 사용 시 Ping 간격(초)
|
useDefaultNotification | Body | Boolean | X | 기본 알림 사용 여부
|
network | Body | Object | O | 네트워크 정보 객체 |
network.subnetId | Body | UUID | O | 서브넷의 식별자 |
network.usePublicAccess | Body | Boolean | X | 외부 접속 가능 여부
|
network.availabilityZone | Body | Enum | O | DB 인스턴스를 생성할 가용성 영역
|
storage | Body | Object | O | 데이터 스토리지 정보 객체 |
storage.storageType | Body | Enum | O | 데이터 스토리지 타입
|
storage.storageSize | Body | Number | O | 데이터 스토리지 크기(GB)
|
backup | Body | Object | O | 백업 정보 객체 |
backup.backupPeriod | Body | Number | O | 백업 보관 기간(일)
|
backup.ftwrlWaitTimeout | Body | Number | X | 쿼리 지연 대기 시간(초)
|
backup.backupRetryCount | Body | Number | X | 백업 재시도 횟수
|
backup.replicationRegion | Body | Enum | X | 백업 복제 리전
|
backup.useBackupLock | Body | Boolean | X | 테이블 잠금 사용 여부
|
backup.backupSchedules | Body | Array | O | 백업 스케줄 목록 |
backup.backupSchedules.backupWndBgnTime | Body | String | O | 백업 시작 시각
|
backup.backupSchedules.backupWndDuration | Body | Enum | O | 백업 Duration 백업 시작 시각부터 Duration 안에 자동 백업이 실행됩니다.
|
backup.backupSchedules.backupRetryExpireTime | Body | String | O | 백업 재시도 만료 시각
|
{
"dbInstanceName": "db-instance",
"description": "description",
"dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
"dbPort": 10000,
"dbVersion": "MYSQL_V8028",
"dbUserName": "db-user",
"dbPassword": "password",
"parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
"dbSecurityGroupIds": [
"b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
],
"userGroupIds": [],
"network": {
"subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
"availabilityZone": "kr-pub-a"
},
"storage": {
"storageType": "General SSD",
"storageSize": 20
},
"restore": {
"tenantId":"tenant-id",
"username":"username",
"password":"password",
"targetContainer":"targetContainer",
"objectPath":"objectPath"
},
"backup": {
"backupPeriod": 1,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "ONE_HOUR_AND_HALF",
"backupRetryExpireTime": "01:30:00"
}
]
}
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
PUT /v3.0/db-instances/{dbInstanceId}/deletion-protection
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
useDeletionProtection | Body | Boolean | O | 삭제 보호 여부 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
PUT /v3.0/db-instances/{dbInstanceId}/high-availability
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
useHighAvailability | Body | Boolean | O | 고가용성 사용 여부 |
pingInterval | Body | Number | X | 고가용성 사용 시 Ping 간격(초) - 최솟값: 1 - 최댓값: 600 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/high-availability/resume
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/high-availability/pause
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/high-availability/repair
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/db-instances/{dbInstanceId}/high-availability/split
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/db-instances/{dbInstanceId}/storage-info
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
storageType | Body | Enum | 데이터 스토리지 타입 |
storageSize | Body | Number | 데이터 스토리지 크기(GB) |
storageStatus | Body | Enum | 데이터 스토리지의 현재 상태 - DETACHED : 부착되지 않음- ATTACHED : 부착됨- DELETED : 삭제됨 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"storageType": "General SSD",
"storageSize": 20,
"storageStatus": "ATTACHED"
}
PUT /v3.0/db-instances/{dbInstanceId}/storage-info
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
storageSize | Body | Number | O | 데이터 스토리지 크기(GB) - 최솟값: 현재값 - 최댓값: 2048 |
useOnlineFailover | Body | Boolean | X | 장애 조치를 이용한 재시작 여부 고가용성을 사용 중인 DB 인스턴스에서만 사용 가능합니다. - 기본값: false |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/db-instances/{dbInstanceId}/backup-info
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
backupPeriod | Body | Number | 백업 보관 기간(일) |
ftwrlWaitTimeout | Body | Number | 쿼리 지연 대기 시간(초) |
backupRetryCount | Body | Number | 백업 재시도 횟수 |
replicationRegion | Body | Enum | 백업 복제 리전 |
useBackupLock | Body | Boolean | 테이블 잠금 사용 여부 |
backupSchedules | Body | Array | 백업 스케줄 목록 |
backupSchedules.backupWndBgnTime | Body | String | 백업 시작 시각 |
backupSchedules.backupWndDuration | Body | Enum | 백업 Duration |
backupSchedules.backupRetryExpireTime | Body | String | 백업 재시도 만료 시각 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"backupPeriod": 1,
"ftwrlWaitTimeout": 1800,
"backupRetryCount": 0,
"replicationRegion": null,
"useBackupLock": false,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "ONE_HOUR_AND_HALF",
"backupRetryExpireTime": "01:30:00"
}
]
}
PUT /v3.0/db-instances/{dbInstanceId}/backup-info
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
backupPeriod | Body | Number | X | 백업 보관 기간(일) - 최솟값: 0 - 최댓값: 730 |
ftwrlWaitTimeout | Body | Number | X | 쿼리 지연 대기 시간(초) - 최솟값: 0 - 최댓값: 21600 |
backupRetryCount | Body | Number | X | 백업 재시도 횟수 - 최솟값: 0 - 최댓값: 10 |
replicationRegion | Body | Enum | X | 백업 복제 리전 - KR1 : 한국(판교)- KR2 : 한국(평촌)- JP1 : 일본(도쿄) |
useBackupLock | Body | Boolean | X | 테이블 잠금 사용 여부 |
backupSchedules | Body | Array | X | 백업 스케줄 목록 |
backupSchedules.backupWndBgnTime | Body | String | O | 백업 시작 시각 - 예시: 00:00:00 |
backupSchedules.backupWndDuration | Body | Enum | O | 백업 Duration 백업 시작 시각부터 Duration 안에 자동 백업이 실행됩니다. - HALF_AN_HOUR : 30분- ONE_HOUR : 1시간- ONE_HOUR_AND_HALF : 1시간 30분- TWO_HOURS : 2시간- TWO_HOURS_AND_HALF : 2시간 30분- THREE_HOURS : 3시간 |
backupSchedules.backupRetryExpireTime | Body | String | O | 백업 재시도 만료 시각 - 백업 재시도 만료 시각은 백업 시작 시각 이전이거나 이후여야 합니다. - 예시: 01:30:00 |
{
"backupPeriod": 5,
"useBackupLock": true,
"backupSchedules": [
{
"backupWndBgnTime": "01:00:00",
"backupWndDuration": "TWO_HOURS",
"backupRetryExpireTime": "03:00:00"
}
]
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/db-instances/{dbInstanceId}/network-info
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
availabilityZone | Body | Enum | DB 인스턴스를 생성할 가용성 영역 |
subnet | Body | Object | 서브넷 객체 |
subnet.subnetId | Body | UUID | 서브넷의 식별자 |
subnet.subnetName | Body | UUID | 서브넷을 식별할 수 있는 이름 |
subnet.subnetCidr | Body | UUID | 서브넷의 CIDR |
endPoints | Body | Array | 접속 정보 목록 |
endPoints.domain | Body | String | 도메인 |
endPoints.ipAddress | Body | String | IP 주소 |
endPoints.endPointType | Body | Enum | 접속 정보 타입 - EXTERNAL : 외부 접속 도메인- INTERNAL : 내부 접속 도메인- PUBLIC : (Deprecated) 외부 접속 도메인- PRIVATE : (Deprecated) 내부 접속 도메인 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"availabilityZone": "kr-pub-a",
"subnet": {
"subnetId": "bd453789-34ae-416c-9f78-05b9e43a46be",
"subnetName": "Default Network",
"subnetCidr": "192.168.0.0/16"
},
"endPoints": [
{
"domain": "ea548a78-d85f-43b4-8ddf-c88d999b9905.internal.kr1.mysql.rds.nhncloudservice.com",
"ipAddress": "192.168.0.2",
"endPointType": "INTERNAL"
}
]
}
PUT /v3.0/db-instances/{dbInstanceId}/network-info
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
usePublicAccess | Body | Boolean | O | 외부 접속 가능 여부 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/db-instances/{dbInstanceId}/db-users
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbUsers | Body | Array | DB 사용자 목록 |
dbUsers.dbUserId | Body | UUID | DB 사용자의 식별자 |
dbUsers.dbUserName | Body | String | DB 사용자 계정 이름 |
dbUsers.host | Body | String | DB 사용자 계정의 호스트 이름 |
dbUsers.authorityType | Body | Enum | DB 사용자 권한 타입 - READ : SELECT 쿼리 수행 가능한 권한- CRUD : DML 쿼리 수행 가능한 권한- DDL : DDL 쿼리 수행 가능한 권한 |
dbUsers.dbUserStatus | Body | Enum | DB 사용자의 현재 상태 - STABLE : 생성됨- CREATING : 생성 중- UPDATING : 수정 중- DELETING : 삭제 중- DELETED : 삭제됨 |
dbUsers.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
dbUsers.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbUsers": [
{
"dbUserId": "4b3d530b-fd02-4d59-a620-83d019a67bbb",
"dbUserName": "db-user",
"host": "%",
"authorityType": "DDL",
"dbUserStatus": "STABLE",
"createdYmdt": "2023-03-17T14:02:29+09:00",
"updatedYmdt": "2023-03-17T14:02:31+09:00"
}
]
}
POST /v3.0/db-instances/{dbInstanceId}/db-users
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbUserName | Body | String | O | DB 사용자 계정 이름 - 최소 길이: 1 - 최대 길이: 32 |
dbPassword | Body | String | O | DB 사용자 계정 암호 - 최소 길이: 4 - 최대 길이: 16 |
host | Body | String | O | DB 사용자 계정의 호스트명 - 예시: 1.1.1.% |
authorityType | Body | Enum | O | DB 사용자 권한 타입 - READ : SELECT 쿼리 수행 가능한 권한- CRUD : DML 쿼리 수행 가능한 권한- DDL : DDL 쿼리 수행 가능한 권한 |
authenticationPlugin | Body | Enum | X | 인증 플러그인 - NATIVE: mysql_native_password - SHA256: sha256_password - CACHING_SHA2: caching_sha2_password |
tlsOption | Body | Enum | X | TLS Option - NONE - SSL - X509 |
[주의] DB 인스턴스의
supportAuthenticationPlugin
값이 true인 DB 인스턴스만authenticationPlugin
,tlsOption
의 값을 설정할 수 있습니다.
{
"dbUserName": "db-user",
"dbPassword": "password",
"host": "1.1.1.%",
"authorityType": "CRUD",
"authenticationPlugin": "NATIVE",
"tlsOption": "NONE"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
PUT /v3.0/db-instances/{dbInstanceId}/db-users/{dbUserId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbUserId | URL | UUID | O | DB 사용자의 식별자 |
dbPassword | Body | String | X | DB 사용자 계정 암호 - 최소 길이: 4 - 최대 길이: 16 |
authorityType | Body | Enum | X | DB 사용자 권한 타입 - READ : SELECT 쿼리 수행 가능한 권한- CRUD : DML 쿼리 수행 가능한 권한- DDL : DDL 쿼리 수행 가능한 권한 |
authenticationPlugin | Body | Enum | X | 인증 플러그인 - NATIVE: mysql_native_password - SHA256: sha256_password - CACHING_SHA2: caching_sha2_password |
tlsOption | Body | Enum | X | TLS Option - NONE - SSL - X509 |
[주의] DB 인스턴스의
supportAuthenticationPlugin
값이 true인 DB 인스턴스만authenticationPlugin
,tlsOption
의 값을 수정할 수 있습니다.authenticationPlugin
의 값은dbPassword
와 동시에 수정을 해야 합니다.
{
"authorityType": "DDL"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
DELETE /v3.0/db-instances/{dbInstanceId}/db-users/{dbUserId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbUserId | URL | UUID | O | DB 사용자의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/db-instances/{dbInstanceId}/db-schemas
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbSchemas | Body | Array | DB 스키마 목록 |
dbSchemas.dbSchemaId | Body | UUID | DB 스키마의 식별자 |
dbSchemas.dbSchemaName | Body | String | DB 스키마 이름 |
dbSchemas.dbSchemaStatus | Body | Enum | DB 스키마의 현재 상태 - STABLE : 생성됨- CREATING : 생성 중- DELETING : 삭제 중- DELETED : 삭제됨 |
dbSchemas.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbSchemas": [
{
"dbSchemaId": "7c9a94b8-86c1-435d-8af2-82a5e9d53fd4",
"dbSchemaName": "schema",
"dbSchemaStatus": "STABLE",
"createdYmdt": "2023-03-20T13:37:45+09:00"
}
]
}
POST /v3.0/db-instances/{dbInstanceId}/db-schemas
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbSchemaName | Body | String | O | DB 스키마 이름 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
DELETE /v3.0/db-instances/{dbInstanceId}/db-schemas/{dbSchemaId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | URL | UUID | O | DB 인스턴스의 식별자 |
dbSchemaId | URL | UUID | O | DB 스키마의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
상태 | 설명 |
---|---|
BACKING_UP |
백업 중인 경우 |
COMPLETED |
백업이 완료된 경우 |
DELETING |
백업이 삭제 중인 경우 |
DELETED |
백업이 삭제된 경우 |
ERROR |
오류가 발생한 경우 |
GET /v3.0/backups
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
page | Query | Number | O | 조회할 목록의 페이지 - 최솟값: 1 |
size | Query | Number | O | 조회할 목록의 페이지 크기 - 최솟값: 1 - 최댓값: 100 |
backupType | Query | Enum | X | 백업 유형 - AUTO : 자동- MANUAL : 수동- 기본값: 전체 |
dbInstanceId | Query | UUID | X | 원본 DB 인스턴스의 식별자 |
dbVersion | Query | Enum | X | DB 엔진 유형 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
totalCounts | Body | Number | 전체 백업 목록 수 |
backups | Body | Array | 백업 목록 |
backups.backupId | Body | UUID | 백업의 식별자 |
backups.backupName | Body | String | 백업을 식별할 수 있는 이름 |
backups.backupStatus | Body | Enum | 백업의 현재 상태 |
backups.dbInstanceId | Body | UUID | 원본 DB 인스턴스의 식별자 |
backups.dbVersion | Body | Enum | DB 엔진 유형 |
backups.utilVersion | Body | String | 백업에 사용된 xtrabackup 유틸리티 버전 |
backups.backupType | Body | Enum | 백업 유형 |
backups.backupSize | Body | Number | 백업의 크기(Byte) |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"totalCounts": 1,
"backups": [
{
"backupId": "0017f136-3e01-4530-94aa-20661afe6632",
"backupName": "backup",
"backupStatus": "COMPLETED",
"dbInstanceId": "142e6ccc-3bfb-4e1e-84f7-38861284fafd",
"dbVersion": "MYSQL_V8028",
"backupType": "AUTO",
"backupSize": 4996786,
"createdYmdt": "2023-02-21T00:35:00+09:00",
"updatedYmdt": "2023-02-22T00:35:32+09:00"
}
]
}
POST /v3.0/backups/{backupId}/export
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
backupId | URL | UUID | O | 백업의 식별자 |
tenantId | Body | String | O | 백업이 저장될 오브젝트 스토리지의 테넌트 ID |
username | Body | String | O | NHN Cloud 회원 또는 IAM 멤버 ID |
password | Body | String | O | 백업이 저장될 오브젝트 스토리지의 API 비밀번호 |
targetContainer | Body | String | O | 백업이 저장될 오브젝트 스토리지의 컨테이너 |
objectPath | Body | String | O | 컨테이너에 저장될 백업의 경로 |
{
"tenantId": "399631c404744dbbb18ce4fa2dc71a5a",
"username": "gildong.hong@nhn.com",
"password": "password",
"targetContainer": "/container",
"objectPath": "/backups/backup_file"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
POST /v3.0/backups/{backupId}/restore
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
backupId | URL | UUID | O | 백업의 식별자 |
dbInstanceName | Body | String | O | DB 인스턴스를 식별할 수 있는 이름 |
description | Body | String | X | DB 인스턴스에 대한 추가 정보 |
dbFlavorId | Body | UUID | O | DB 인스턴스 사양의 식별자 |
dbPort | Body | Integer | O | DB 포트 - 최솟값: 3306 - 최댓값: 43306 |
parameterGroupId | Body | UUID | O | 파라미터 그룹의 식별자 |
dbSecurityGroupIds | Body | Array | X | DB 보안 그룹의 식별자 목록 |
userGroupIds | Body | Array | X | 사용자 그룹의 식별자 목록 |
useHighAvailability | Body | Boolean | X | 고가용성 사용 여부 - 기본값: false |
pingInterval | Body | Number | X | 고가용성 사용 시 Ping 간격(초) - 기본값: 3 - 최솟값: 1 - 최댓값: 600 |
useDefaultNotification | Body | Boolean | X | 기본 알림 사용 여부 - 기본값: false |
useDeletionProtection | Body | Boolean | X | 삭제 보호 여부 - 기본값: false |
network | Body | Object | O | 네트워크 정보 객체 |
network.subnetId | Body | UUID | O | 서브넷의 식별자 |
network.usePublicAccess | Body | Boolean | X | 외부 접속 가능 여부 - 기본값: false |
network.availabilityZone | Body | Enum | O | DB 인스턴스를 생성할 가용성 영역 - 예시: kr-pub-a |
storage | Body | Object | O | 데이터 스토리지 정보 객체 |
storage.storageType | Body | Enum | O | 데이터 스토리지 타입 - 예시: General SSD |
storage.storageSize | Body | Number | O | 데이터 스토리지 크기(GB) - 최솟값: 20 - 최댓값: 2048 |
backup | Body | Object | O | 백업 정보 객체 |
backup.backupPeriod | Body | Number | O | 백업 보관 기간(일) - 최솟값: 0 - 최댓값: 730 |
backup.ftwrlWaitTimeout | Body | Number | X | 쿼리 지연 대기 시간(초) - 기본값: 1800 - 최솟값: 0 - 최댓값: 21600 |
backup.backupRetryCount | Body | Number | X | 백업 재시도 횟수 - 기본값: 0 - 최솟값: 0 - 최댓값: 10 |
backup.replicationRegion | Body | Enum | X | 백업 복제 리전 - KR1 : 한국(판교)- KR2 : 한국(평촌)- JP1 : 일본(도쿄) |
backup.useBackupLock | Body | Boolean | X | 테이블 잠금 사용 여부 - 기본값: true |
backup.backupSchedules | Body | Array | O | 백업 스케줄 목록 |
backup.backupSchedules.backupWndBgnTime | Body | String | O | 백업 시작 시각 - 예시: 00:00:00 |
backup.backupSchedules.backupWndDuration | Body | Enum | O | 백업 Duration 백업 시작 시각부터 Duration 안에 자동 백업이 실행됩니다. - HALF_AN_HOUR : 30분- ONE_HOUR : 1시간- ONE_HOUR_AND_HALF : 1시간 30분- TWO_HOURS : 2시간- TWO_HOURS_AND_HALF : 2시간 30분- THREE_HOURS : 3시간 |
backup.backupSchedules.backupRetryExpireTime | Body | String | O | 백업 재시도 만료 시각 - 백업 재시도 만료 시각은 백업 시작 시각 이전이거나 이후여야 합니다. - 예시: 01:30:00 |
{
"dbInstanceName": "db-instance-restore",
"dbFlavorId": "50be6d9c-02d6-4594-a2d4-12010eb65ec0",
"dbPort": 10000,
"parameterGroupId": "132d383c-38e3-468a-a826-5e9a8fff15d0",
"network": {
"subnetId": "e721a9dd-dad0-4cf0-a53b-dd654ebfc683",
"availabilityZone": "kr-pub-a"
},
"storage": {
"storageType": "General SSD",
"storageSize": 20
},
"backup": {
"backupPeriod": 1,
"backupSchedules": [
{
"backupWndBgnTime": "00:00:00",
"backupWndDuration": "HALF_AN_HOUR",
"backupRetryExpireTime": "01:30:00"
}
]
}
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
DELETE /v3.0/backups/{backupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
backupId | URL | UUID | O | 백업의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
상태 | 설명 |
---|---|
NONE |
진행 중인 작업이 없음 |
CREATING_RULE |
규칙 정책 생성 중 |
UPDATING_RULE |
규칙 정책 수정 중 |
DELETING_RULE |
규칙 정책 삭제 중 |
GET /v3.0/db-security-groups
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbSecurityGroups | Body | Array | DB 보안 그룹 목록 |
dbSecurityGroups.dbSecurityGroupId | Body | UUID | DB 보안 그룹의 식별자 |
dbSecurityGroups.dbSecurityGroupName | Body | String | DB 보안 그룹을 식별할 수 있는 이름 |
dbSecurityGroups.description | Body | String | DB 보안 그룹에 대한 추가 정보 |
dbSecurityGroups.progressStatus | Body | Enum | DB 보안 그룹의 현재 진행 상태 |
dbSecurityGroups.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
dbSecurityGroups.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbSecurityGroups": [
{
"dbSecurityGroupId": "fe4f2aee-afbb-4c19-a5e9-eb2eab394708",
"dbSecurityGroupName": "dbSecurityGroup",
"description": "description",
"progressStatus": "NONE",
"createdYmdt": "2023-02-19T19:18:13+09:00",
"updatedYmdt": "2022-02-19T19:18:13+09:00"
}
]
}
GET /v3.0/db-security-groups/{dbSecurityGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupId | URL | UUID | O | DB 보안 그룹의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbSecurityGroupId | Body | UUID | DB 보안 그룹의 식별자 |
dbSecurityGroupName | Body | String | DB 보안 그룹을 식별할 수 있는 이름 |
description | Body | String | DB 보안 그룹에 대한 추가 정보 |
progressStatus | Body | Enum | DB 보안 그룹의 현재 진행 상태 |
rules | Body | Array | DB 보안 그룹 규칙 목록 |
rules.ruleId | Body | UUID | DB 보안 그룹 규칙의 식별자 |
rules.description | Body | String | DB 보안 그룹 규칙에 대한 추가 정보 |
rules.direction | Body | Enum | 통신 방향 - INGRESS : 수신- EGRESS : 송신 |
rules.etherType | Body | Enum | Ether 타입 - IPV4 : IPv4- IPV6 : IPv6 |
rules.port | Body | Object | 포트 객체 |
rules.port.portType | Body | Enum | 포트 타입 - DB_PORT : 각 DB 인스턴스 포트값으로 설정됩니다.- PORT : 지정된 포트값으로 설정됩니다.- PORT_RANGE : 지정된 포트 범위로 설정됩니다. |
rules.port.minPort | Body | Number | 최소 포트 범위 |
rules.port.maxPort | Body | Number | 최대 포트 범위 |
rules.cidr | Body | String | 허용할 트래픽의 원격 소스 |
rules.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
rules.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"dbSecurityGroup": {
"dbSecurityGroupId": "fe4f2aee-afbb-4c19-a5e9-eb2eab394708",
"dbSecurityGroupName": "dbSecurityGroup",
"description": "description",
"progressStatus": "NONE",
"rules": [
{
"ruleId": "17c88ef6-95f1-4678-84f9-fee1b22e250d",
"description": "description",
"direction": "INGRESS",
"etherType": "IPV4",
"port": {
"portType": "PORT_RANGE",
"minPort": 10000,
"maxPort": 10005
},
"cidr": "0.0.0.0/0",
"createdYmdt": "2023-02-19T19:18:13+09:00",
"updatedYmdt": "2023-02-19T19:18:13+09:00"
}
],
"createdYmdt": "2023-02-19T19:18:13+09:00",
"updatedYmdt": "2023-02-19T19:18:13+09:00"
}
}
POST /v3.0/db-security-groups
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupName | Body | String | O | DB 보안 그룹을 식별할 수 있는 이름 |
description | Body | String | X | DB 보안 그룹에 대한 추가 정보 |
rules | Body | Array | O | DB 보안 그룹 규칙 목록 |
rules.description | Body | String | X | DB 보안 그룹 규칙에 대한 추가 정보 |
rules.direction | Body | Enum | O | 통신 방향 - INGRESS : 수신- EGRESS : 송신 |
rules.etherType | Body | Enum | O | Ether 타입 - IPV4 : IPv4- IPV6 : IPv6 |
rules.cidr | Body | String | O | 허용할 트래픽의 원격 소스 - 예시: 1.1.1.1/32 |
rules.port | Body | Object | O | 포트 객체 |
rules.port.portType | Body | Enum | O | 포트 타입 - DB_PORT : 각 DB 인스턴스 포트값으로 설정됩니다. minPort 값과 maxPort 값을 필요로 하지 않습니다.- PORT : 지정된 포트값으로 설정됩니다. minPort 값과 maxPort 값이 같아야 합니다.- PORT_RANGE : 지정된 포트 범위로 설정됩니다. |
rules.port.minPort | Body | Number | X | 최소 포트 범위 - 최솟값: 1 |
rules.port.maxPort | Body | Number | X | 최대 포트 범위 - 최댓값: 65535 |
{
"dbSecurityGroupName": "dbSecurityGroup",
"description": "description",
"rules": [
{
"direction": "INGRESS",
"etherType": "IPV4",
"port": {
"portType": "PORT_RANGE",
"minPort": 10000,
"maxPort": 10005
},
"cidr": "0.0.0.0/0"
}
]
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
dbSecurityGroupId | Body | UUID | DB 보안 그룹의 식별자 |
PUT /v3.0/db-security-groups/{dbSecurityGroupId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupId | URL | UUID | O | DB 보안 그룹의 식별자 |
dbSecurityGroupName | Body | String | X | DB 보안 그룹을 식별할 수 있는 이름 |
description | Body | String | X | DB 보안 그룹에 대한 추가 정보 |
{
"dbSecurityGroupName": "dbSecurityGroup",
"description": "description"
}
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
DELETE /v3.0/db-security-groups/{dbSecurityGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupId | URL | UUID | O | DB 보안 그룹의 식별자 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
POST /v3.0/db-security-groups/{dbSecurityGroupId}/rules
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupId | URL | UUID | O | DB 보안 그룹의 식별자 |
description | Body | String | X | DB 보안 그룹 규칙에 대한 추가 정보 |
direction | Body | Enum | O | 통신 방향 - INGRESS : 수신- EGRESS : 송신 |
etherType | Body | Enum | O | Ether 타입 - IPV4 : IPv4- IPV6 : IPv6 |
port | Body | Object | O | 포트 객체 |
port.portType | Body | Enum | O | 포트 타입 - DB_PORT : 각 DB 인스턴스 포트값으로 설정됩니다. minPort 값과 maxPort 값을 필요로 하지 않습니다.- PORT : 지정된 포트값으로 설정됩니다. minPort 값과 maxPort 값이 같아야 합니다.- PORT_RANGE : 지정된 포트 범위로 설정됩니다. |
port.minPort | Body | Number | X | 최소 포트 범위 - 최솟값: 1 |
port.maxPort | Body | Number | X | 최대 포트 범위 - 최댓값: 65535 |
cidr | Body | String | O | 허용할 트래픽의 원격 소스 - 예시: 1.1.1.1/32 |
{
"direction": "INGRESS",
"etherType": "IPV4",
"port": {
"portType": "PORT",
"minPort": 10000,
"maxPort": 10000
},
"cidr": "0.0.0.0/0"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
PUT /v3.0/db-security-groups/{dbSecurityGroupId}/rules/{ruleId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupId | URL | UUID | O | DB 보안 그룹의 식별자 |
ruleId | URL | UUID | O | DB 보안 그룹 규칙의 식별자 |
description | Body | String | X | DB 보안 그룹 규칙에 대한 추가 정보 |
direction | Body | Enum | O | 통신 방향 - INGRESS : 수신- EGRESS : 송신 |
etherType | Body | Enum | O | Ether 타입 - IPV4 : IPv4- IPV6 : IPv6 |
port | Body | Object | O | 포트 객체 |
port.portType | Body | Enum | O | 포트 타입 - DB_PORT : 각 DB 인스턴스 포트값으로 설정됩니다. minPort 값과 maxPort 값을 필요로 하지 않습니다.- PORT : 지정된 포트값으로 설정됩니다. minPort 값과 maxPort 값이 같아야 합니다.- PORT_RANGE : 지정된 포트 범위로 설정됩니다. |
port.minPort | Body | Number | X | 최소 포트 범위 - 최솟값: 1 |
port.maxPort | Body | Number | X | 최대 포트 범위 - 최댓값: 65535 |
cidr | Body | String | O | 허용할 트래픽의 원격 소스 - 예시: 1.1.1.1/32 |
{
"direction": "INGRESS",
"etherType": "IPV4",
"port": {
"portType": "DB_PORT"
},
"cidr": "0.0.0.0/0"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
DELETE /v3.0/db-security-groups/{dbSecurityGroupId}/rules
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbSecurityGroupId | URL | UUID | O | DB 보안 그룹의 식별자 |
ruleIds | Query | Array | O | DB 보안 그룹 규칙의 식별자 목록 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
jobId | Body | UUID | 요청한 작업의 식별자 |
GET /v3.0/parameter-groups
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbVersion | Query | Enum | X | DB 엔진 유형 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
parameterGroups | Body | Array | 파라미터 그룹 목록 |
parameterGroups.parameterGroupId | Body | UUID | 파라미터 그룹의 식별자 |
parameterGroups.parameterGroupName | Body | String | 파라미터 그룹을 식별할 수 있는 이름 |
parameterGroups.description | Body | String | 파라미터 그룹에 대한 추가 정보 |
parameterGroups.dbVersion | Body | Enum | DB 엔진 유형 |
parameterGroups.parameterGroupStatus | Body | Enum | 파라미터 그룹의 현재 상태 - STABLE : 적용 완료- NEED_TO_APPLY : 적용 필요 |
parameterGroups.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
parameterGroups.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"parameterGroups": [
{
"parameterGroupId": "404e8a89-ca4d-4fca-96c2-1518754d50b7",
"parameterGroupName": "parameter-group",
"description": null,
"dbVersion": "MYSQL_V8023",
"parameterGroupStatus": "STABLE",
"createdYmdt": "2023-02-31T15:28:17+09:00",
"updatedYmdt": "2023-02-31T15:28:17+09:00"
}
]
}
GET /v3.0/parameter-groups/{parameterGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupId | URL | UUID | O | 파라미터 그룹의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
parameterGroupId | Body | UUID | 파라미터 그룹의 식별자 |
parameterGroupName | Body | String | 파라미터 그룹을 식별할 수 있는 이름 |
description | Body | String | 파라미터 그룹에 대한 추가 정보 |
dbVersion | Body | Enum | DB 엔진 유형 |
parameterGroupStatus | Body | Enum | 파라미터 그룹의 현재 상태 - STABLE : 적용 완료- NEED_TO_APPLY : 적용 필요 |
parameters | Body | Array | 파라미터 목록 |
parameters.parameterId | Body | UUID | 파라미터 식별자 |
parameters.parameterFileGroup | Body | Enum | 파라미터 파일 그룹 타입 - CLIENT : client- MYSQL : mysql- MYSQLD : mysqld |
parameters.parameterName | Body | String | 파라미터 이름 |
parameters.fileParameterName | Body | String | 파라미터 파일 이름 |
parameters.value | Body | String | 현재 설정된 값 |
parameters.defaultValue | Body | String | 기본값 |
parameters.allowedValue | Body | String | 허용된 값 |
parameters.updateType | Body | Enum | 수정 타입 - VARIABLE : 언제든 수정 가능- CONSTANT : 수정 불가능- INIT_VARIABLE : DB 인스턴스 생성 시에만 수정 가능 |
parameters.applyType | Body | Enum | 적용 타입 - SESSION : 세션 적용- FILE : 설정 파일 적용(재시작 필요)- BOTH : 전체(재시작 필요) |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"parameterGroupId": "404e8a89-ca4d-4fca-96c2-1518754d50b7",
"parameterGroupName": "parameter-group",
"description": null,
"dbVersion": "MYSQL_V8023",
"parameterGroupStatus": "STABLE",
"parameters": [
{
"parameterId": "fa040b5e-f29f-46de-8f0d-bba4cb82887a",
"parameterFileGroup": "client",
"parameterName": "socket",
"fileParameterName": "socket",
"value": "/home/tcrds/db/mysql/tmp/mysql.sock",
"defaultValue": "/home/tcrds/db/mysql/tmp/mysql.sock",
"allowedValue": "",
"updateType": "CONSTANT",
"applyType": "BOTH"
}
],
"createdYmdt": "2023-03-13T11:02:28+09:00",
"updatedYmdt": "2023-03-13T11:02:28+09:00"
}
POST /v3.0/parameter-groups
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupName | Body | String | O | 파라미터 그룹을 식별할 수 있는 이름 |
description | Body | String | X | 파라미터 그룹에 대한 추가 정보 |
dbVersion | Body | Enum | O | DB 엔진 유형 |
{
"parameterGroupName": "parameter-group",
"dbVersion": "MYSQL_V8023"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
parameterGroupId | Body | UUID | 파라미터 그룹의 식별자 |
POST /v3.0/parameter-groups/{parameterGroupId}/copy
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupId | URL | UUID | O | 파라미터 그룹의 식별자 |
parameterGroupName | Body | String | O | 파라미터 그룹을 식별할 수 있는 이름 |
description | Body | String | X | 파라미터 그룹에 대한 추가 정보 |
{
"parameterGroupName": "parameter-group-copy",
"description": "copy"
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
parameterGroupId | Body | UUID | 파라미터 그룹의 식별자 |
PUT /v3.0/parameter-groups/{parameterGroupId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupId | URL | UUID | O | 파라미터 그룹의 식별자 |
parameterGroupName | Body | String | X | 파라미터 그룹을 식별할 수 있는 이름 |
description | Body | String | X | 파라미터 그룹에 대한 추가 정보 |
{
"parameterGroupName": "parameter-group"
}
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
PUT /v3.0/parameter-groups/{parameterGroupId}/parameters
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupId | URL | UUID | O | 파라미터 그룹의 식별자 |
modifiedParameters | Body | Array | O | 변경할 파라미터 목록 |
modifiedParameters.parameterId | Body | UUID | O | 파라미터의 식별자 |
modifiedParameters.value | Body | String | O | 변경할 파라미터 값 |
{
"modifiedParameters": [
{
"parameterId": "3abac558-7274-44e1-9f4a-f100f53f67ba",
"value": "0"
}
]
}
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
PUT /v3.0/parameter-groups/{parameterGroupId}/reset
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupId | URL | UUID | O | 파라미터 그룹의 식별자 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
DELETE /v3.0/parameter-groups/{parameterGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
parameterGroupId | URL | UUID | O | 파라미터 그룹의 식별자 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
GET /v3.0/user-groups
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
userGroups | Body | Array | 사용자 그룹 목록 |
userGroups.userGroupId | Body | UUID | 사용자 그룹의 식별자 |
userGroups.userGroupName | Body | String | 사용자 그룹을 식별할 수 있는 이름 |
userGroups.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
userGroups.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"userGroups": [
{
"userGroupId": "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0",
"userGroupName": "dev-team",
"createdYmdt": "2023-02-23T10:07:54+09:00",
"updatedYmdt": "2023-02-26T01:15:50+09:00"
}
]
}
GET /v3.0/user-groups/{userGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
userGroupId | URL | UUID | O | 사용자 그룹의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
userGroupId | Body | UUID | 사용자 그룹의 식별자 |
userGroupName | Body | String | 사용자 그룹을 식별할 수 있는 이름 |
userGroupTypeCode | Body | Enum | 사용자 그룹 종류 ENTIRE : 프로젝트 멤버 전체를 포함하는 사용자 그룹 INDIVIDUAL_MEMBER : 특정 프로젝트 멤버를 포함하는 사용자 그룹 |
members | Body | Array | 프로젝트 멤버 목록 |
members.memberId | Body | UUID | 프로젝트 멤버의 식별자 |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"userGroupId": "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0",
"userGroupName": "dev-team",
"userGroupTypeCode": "INDIVIDUAL_MEMBER",
"members": [
{
"memberId": "1321e759-2ef3-4b85-9921-b13e918b24b5"
}
],
"createdYmdt": "2023-02-23T10:07:54+09:00",
"updatedYmdt": "2023-02-26T01:15:50+09:00"
}
POST /v3.0/user-groups
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
userGroupName | Body | String | O | 사용자 그룹을 식별할 수 있는 이름 |
memberIds | Body | Array | O | 프로젝트 멤버의 식별자 목록 selectAllYN 이 true인 경우 해당 필드 값은 무시됨 |
selectAllYN | Body | Boolean | X | 프로젝트 멤버 전체 유무 true인 경우 해당 그룹은 전체 멤버에 대해 설정됨 |
{
"userGroupName": "dev-team",
"memberIds": [
"1321e759-2ef3-4b85-9921-b13e918b24b5"
]
}
{
"userGroupName": "dev-team",
"selectAllYN":true
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
userGroupId | Body | UUID | 사용자 그룹의 식별자 |
PUT /v3.0/user-groups/{userGroupId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
userGroupId | URL | UUID | O | 사용자 그룹의 식별자 |
userGroupName | Body | String | X | 사용자 그룹을 식별할 수 있는 이름 |
memberIds | Body | Array | X | 프로젝트 멤버의 식별자 목록 |
selectAllYN | Body | Boolean | X | 프로젝트 멤버 전체 유무 true인 경우 해당 그룹은 전체 멤버에 대해 설정됨 |
{
"userGroupName": "dev-team",
"memberIds": [
"1321e759-2ef3-4b85-9921-b13e918b24b5",
"f9064b09-2b15-442e-a4b0-3a5a2754555e"
]
}
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
DELETE /v3.0/user-groups/{userGroupId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
userGroupId | URL | UUID | O | 사용자 그룹의 식별자 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
GET /v3.0/notification-groups
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
notificationGroups | Body | Array | 알림 그룹 목록 |
notificationGroups.notificationGroupId | Body | UUID | 알림 그룹의 식별자 |
notificationGroups.notificationGroupName | Body | String | 알림 그룹을 식별할 수 있는 이름 |
notificationGroups.notifyEmail | Body | Boolean | 이메일 알림 여부 |
notificationGroups.notifySms | Body | Boolean | SMS 알림 여부 |
notificationGroups.isEnabled | Body | Boolean | 활성화 여부 |
notificationGroups.createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
notificationGroups.updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"notificationGroups": [
{
"notificationGroupId": "b3901f17-9971-4d1e-8a81-8448cf533dc7",
"notificationGroupName": "dev-team-noti",
"notifyEmail": true,
"notifySms": false,
"isEnabled": true,
"createdYmdt": "2023-02-20T13:34:13+09:00",
"updatedYmdt": "2023-02-20T13:34:13+09:00"
}
]
}
GET /v3.0/notification-groups/{notificationGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
notificationGroupId | URL | UUID | O | 알림 그룹의 식별자 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
notificationGroupId | Body | UUID | 알림 그룹의 식별자 |
notificationGroupName | Body | String | 알림 그룹을 식별할 수 있는 이름 |
notifyEmail | Body | Boolean | 이메일 알림 여부 |
notifySms | Body | Boolean | SMS 알림 여부 |
isEnabled | Body | Boolean | 활성화 여부 |
dbInstances | Body | Array | 감시 대상 DB 인스턴스 목록 |
dbInstances.dbInstanceId | Body | UUID | DB 인스턴스의 식별자 |
dbInstances.dbInstanceName | Body | String | DB 인스턴스를 식별할 수 있는 이름 |
userGroups | Body | Array | 사용자 그룹 목록 |
userGroups.userGroupId | Body | UUID | 사용자 그룹의 식별자 |
userGroups.userGroupName | Body | String | 사용자 그룹을 식별할 수 있는 이름 |
createdYmdt | Body | DateTime | 생성 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
updatedYmdt | Body | DateTime | 수정 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"notificationGroupId": "b3901f17-9971-4d1e-8a81-8448cf533dc7",
"notificationGroupName": "dev-team-noti",
"notifyEmail": true,
"notifySms": false,
"isEnabled": true,
"dbInstances": [
{
"dbInstanceId": "ed5cb985-526f-4c54-9ae0-40288593de65",
"dbInstanceName": "database"
}
],
"userGroups": [
{
"userGroupId": "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0",
"userGroupName": "dev-team"
}
],
"createdYmdt": "2023-02-20T13:34:13+09:00",
"updatedYmdt": "2023-02-20T13:34:13+09:00"
}
POST /v3.0/notification-groups
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
notificationGroupName | Body | String | O | 알림 그룹을 식별할 수 있는 이름 |
notifyEmail | Body | Boolean | X | 이메일 알림 여부 - 기본값: true |
notifySms | Body | Boolean | X | SMS 알림 여부 - 기본값: true |
isEnabled | Body | Boolean | X | 활성화 여부 - 기본값: true |
dbInstanceIds | Body | Array | O | 감시 대상 DB 인스턴스의 식별자 목록 |
userGroupIds | Body | Array | O | 사용자 그룹의 식별자 목록 |
{
"notificationGroupName": "dev-team-noti",
"notifyEmail": false,
"isEnable": true,
"dbInstanceIds": [
"ed5cb985-526f-4c54-9ae0-40288593de65"
],
"userGroupIds": [
"1aac0437-f32d-4923-ad3c-ac61c1cfdfe0"
]
}
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
notificationGroupId | Body | UUID | 알림 그룹의 식별자 |
PUT /v3.0/notification-groups/{notificationGroupId}
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
notificationGroupId | URL | UUID | O | 알림 그룹의 식별자 |
notificationGroupName | Body | String | X | 알림 그룹을 식별할 수 있는 이름 |
notifyEmail | Body | Boolean | X | 이메일 알림 여부 |
notifySms | Body | Boolean | X | SMS 알림 여부 |
isEnabled | Body | Boolean | X | 활성화 여부 |
dbInstanceIds | Body | Array | X | 감시 대상 DB 인스턴스의 식별자 목록 |
userGroupIds | Body | Array | X | 사용자 그룹의 식별자 목록 |
{
"notifyEmail": true,
"dbInstanceIds": [
"ed5cb985-526f-4c54-9ae0-40288593de65",
"d51b7da0-682f-47ff-b588-b739f6adc740"
]
}
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
DELETE /v3.0/notification-groups/{notificationGroupId}
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
notificationGroupId | URL | UUID | O | 알림 그룹의 식별자 |
이 API는 응답 본문을 반환하지 않습니다.
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
}
}
GET /v3.0/metrics
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
metrics | Body | Array | Metric 목록 |
metrics.measureName | Body | Enum | 조회 지표 유형 |
metrics.unit | Body | String | 측정값 단위 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"metrics": [
{
"measureName": "CPU_USAGE",
"unit": "%"
}
]
}
GET /v3.0/metric-statistics
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
dbInstanceId | Query | UUID | O | DB 인스턴스의 식별자 |
measureNames | Query | Array | O | 조회 지표 목록 - 최소 크기: 1 |
from | Query | Datetime | O | 시작 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
to | Query | Datetime | O | 종료 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
interval | Query | Number | X | 조회 간격 |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
metricStatistics | Body | Array | 통계 정보 목록 |
metricStatistics.measureName | Body | Enum | 측정 항목 유형 |
metricStatistics.unit | Body | String | 측정값 단위 |
metricStatistics.values | Body | Array | 측정값 목록 |
metricStatistics.values.timestamp | Body | Timestamp | 측정 시간 |
metricStatistics.values.value | Body | Object | 측정값 |
{
"metricStatistics": [
{
"measureName": "MYSQL_STATUS",
"unit": "",
"values": [
[
1679298540,
"1"
],
[
1679298600,
"1"
],
[
1679298660,
"1"
]
]
}
]
}
이벤트는 카테고리로 분류할 수 있으며 아래와 같습니다.
이벤트 카테고리 | 설명 |
---|---|
ALL | 전체 |
BACKUP | 백업 |
DB_INSTANCE | DB 인스턴스 |
JOB | 작업 |
TENANT | 테넌트 |
MONITORING | 모니터링 |
GET /v3.0/events
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 필수 | 설명 |
---|---|---|---|---|
page | Query | Number | O | 조회할 목록의 페이지 - 최솟값: 1 |
size | Query | Number | O | 조회할 목록의 페이지 크기 - 최솟값: 1 - 최댓값: 100 |
from | Query | Datetime | O | 시작 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
to | Query | Datetime | O | 종료 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
eventCategoryType | Query | Enum | O | 조회할 이벤트 카테고리 유형 - ALL : 전체- INSTANCE : DB 인스턴스- BACKUP : 백업- DB_SECURITY_GROUP : DB 보안 그룹- TENANT : 테넌트 |
sourceId | Query | String | X | 이벤트가 발생한 대상 리소스의 식별자 |
keyword | Query | String | X | 이벤트 메시지에 포함된 문자열 검색어 |
ascendingOrder | Query | Enum | X | 이벤트 메시지 정렬 순서 - ASC : 오름차순- DESC : 내림차순- 기본값: DESC |
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
totalCounts | Body | Number | 전체 이벤트 목록 수 |
events | Body | Array | 이벤트 목록 |
events.eventCategoryType | Body | Enum | 이벤트 카테고리 유형 |
events.eventCode | Body | Enum | 발생한 이벤트의 유형 |
events.sourceId | Body | String | 이벤트 소스의 식별자 |
events.sourceName | Body | String | 이벤트 소스를 식별할 수 있는 이름 |
events.messages | Body | Array | 이벤트 메시지 목록 |
events.messages.langCode | Body | String | 언어 코드 |
events.messages.message | Body | String | 이벤트 메시지 |
events.eventYmdt | Body | DateTime | 이벤트 발생 일시(YYYY-MM-DDThh:mm:ss.SSSTZD) |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"totalCounts": 28,
"events": [
{
"eventCategoryType": "INSTANCE",
"eventCode": "INSTC_02_01",
"sourceId": "76f00947-356e-4a20-8922-428368cc45ed",
"sourceName": "db-instance",
"messages": [
{
"langCode": "EN",
"message": "DB instance started"
},
{
"langCode": "JA",
"message": "DBインスタンスの起動"
},
{
"langCode": "KO",
"message": "DB 인스턴스 시작"
},
{
"langCode": "ZH",
"message": "DB instance started"
}
],
"eventYmdt": "2023-03-20T16:31:59+09:00"
}
]
}
GET /v3.0/event-codes
이 API는 요청 본문을 요구하지 않습니다.
이름 | 종류 | 형식 | 설명 |
---|---|---|---|
eventCodes | Body | Array | 이벤트 코드 목록 |
eventCodes.eventCode | Body | Enum | 이벤트 코드 |
eventCodes.eventCategoryType | Body | Enum | 이벤트 카테고리 유형 |
{
"header": {
"resultCode": 0,
"resultMessage": "SUCCESS",
"isSuccessful": true
},
"eventCodes": [
{
"eventCode": "INSTC_05_01",
"eventCategoryType": "INSTANCE"
}
]
}