작업 상태 확인 - Amazon Relational Database Service

작업 상태 확인

rdsadmin.get_task_status 사용자 정의 함수를 사용하여 다음 Amazon RDS for Db2 작업의 상태를 확인할 수 있습니다. 단, 이 목록이 전부는 아닙니다.

  • 버퍼 풀 생성, 변경 또는 삭제

  • 테이블스페이스 생성, 변경 또는 삭제

  • 데이터베이스 생성 또는 삭제

  • Amazon S3에서 데이터베이스 백업 복원

  • Amazon S3에서 데이터베이스 로그 롤포워딩

rdsadmin.get_task_status

작업의 상태를 반환합니다.

구문

db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params, cast(task_output as varchar(500)) as task_output from table(rdsadmin.get_task_status(task_id,'database_name','task_type'))"

파라미터

다음 파라미터는 선택 사항입니다. 파라미터를 제공하지 않으면 사용자 정의 함수는 모든 데이터베이스의 모든 작업 상태를 반환합니다. Amazon RDS는 35일 동안 작업 기록을 유지합니다.

task_id

실행 중인 작업의 ID입니다. 이 ID는 작업을 실행할 때 반환됩니다. 기본값: 0.

database_name

작업이 실행되고 있는 데이터베이스의 이름입니다.

task_type

쿼리할 작업의 유형입니다. 유효한 값은 ADD_GROUPS, ADD_USER, ALTER_BUFFERPOOL, ALTER_TABLESPACE, CHANGE_PASSWORD, COMPLETE_ROLLFORWARD, CREATE_BUFFERPOOL, CREATE_DATABASE, CREATE_ROLE, CREATE_TABLESPACE, DROP_BUFFERPOOL, DROP_DATABASE, DROP_TABLESPACE, LIST_USERS, REMOVE_GROUPS, REMOVE_USER, RESTORE_DB, ROLLFORWARD_DB_LOG, ROLLFORWARD_STATUS, UPDATE_DB_PARAM입니다.

예시

다음 예제에서는 rdsadmin.get_task_status가 호출될 때 반환된 열을 표시합니다.

db2 "describe select * from table(rdsadmin.get_task_status())"

다음 예제에서는 모든 작업의 상태를 나열합니다.

db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params, cast(task_output as varchar(500)) as task_output from table(rdsadmin.get_task_status(null,null,null))"

다음 예제에서는 특정 작업의 상태를 나열합니다.

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(1,null,null))"

다음 예제에서는 특정 작업 및 데이터베이스의 상태를 나열합니다.

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(2,'SAMPLE',null))"

다음 예제에서는 모든 ADD_GROUPS 작업의 상태를 나열합니다.

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(null,null,'add_groups'))"

다음 예제에서는 특정 데이터베이스의 모든 작업 상태를 나열합니다.

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(null,'testdb', null))"

다음 예제는 JSON 값을 열로 출력합니다.

db2 "select varchar(r.task_type,25) as task_type, varchar(r.lifecycle,10) as lifecycle, r.created_at, u.* from table(rdsadmin.get_task_status(null,null,'restore_db')) as r, json_table(r.task_input_params, 'strict $' columns(s3_prefix varchar(500) null on empty, s3_bucket_name varchar(500) null on empty) error on error ) as U"

응답

rdsadmin.get_task_status 사용자 정의 함수는 다음 열을 반환합니다.

TASK_ID

작업의 ID입니다.

TASK_TYPE

입력 파라미터에 따라 다릅니다.

  • ADD_GROUPS – 그룹을 추가합니다.

  • ADD_USER – 사용자를 추가합니다.

  • ALTER_BUFFERPOOL – 버퍼 풀을 변경합니다.

  • ALTER_TABLESPACE – 테이블스페이스를 변경합니다.

  • CHANGE_PASSWORD – 사용자의 암호를 변경합니다.

  • COMPLETE_ROLLFORWARDrdsadmin.rollforward_database 작업을 완료하고 데이터베이스를 활성화합니다.

  • CREATE_BUFFERPOOL – 버퍼 풀을 생성합니다.

  • CREATE_DATABASE – 데이터베이스를 생성합니다.

  • CREATE_ROLE – 사용자의 Db2 역할을 생성합니다.

  • CREATE_TABLESPACE – 테이블스페이스를 생성합니다.

  • DROP_BUFFERPOOL – 버퍼 풀을 삭제합니다.

  • DROP_DATABASE – 데이터베이스를 삭제합니다.

  • DROP_TABLESPACE – 테이블스페이스를 삭제합니다.

  • LIST_USERS – 모든 사용자를 나열합니다.

  • REMOVE_GROUPS – 그룹을 제거합니다.

  • REMOVE_USER – 사용자를 제거합니다.

  • RESTORE_DB – 전체 데이터베이스를 복원합니다.

  • ROLLFORWARD_DB_LOG – 데이터베이스 로그에 대한 rdsadmin.rollforward_database 작업을 수행합니다.

  • ROLLFORWARD_STATUS rdsadmin.rollforward_database 작업 상태를 반환합니다.

  • UPDATE_DB_PARAM – 데이터 파라미터를 업데이트합니다.

DATABASE_NAME

작업이 연결되어 있는 데이터베이스의 이름입니다.

COMPLETED_WORK_BYTES

작업이 복원한 바이트 수입니다.

DURATION_MINS

작업을 완료하는 데 걸린 시간입니다.

LIFECYCLE

작업의 상태입니다. 가능한 상태:

  • CREATED – Amazon RDS에 작업을 제출한 후 Amazon RDS는 상태를 CREATED로 설정합니다.

  • IN_PROGRESS – 작업이 시작되면 Amazon RDS는 상태를 IN_PROGRESS로 설정합니다. CREATED에서 IN_PROGRESS로 상태가 변경되려면 최대 5분이 걸릴 수 있습니다.

  • SUCCESS – 작업이 완료되면 Amazon RDS는 상태를 SUCCESS로 설정합니다.

  • ERROR – 복원 작업이 실패할 경우 Amazon RDS는 상태를 ERROR로 설정합니다. 오류에 대한 자세한 내용은 TASK_OUPUT 섹션을 참조하세요.

CREATED_BY

명령을 생성한 authid입니다.

CREATED_AT

작업을 생성한 날짜와 시간입니다.

LAST_UPDATED_AT

작업이 마지막으로 업데이트된 날짜와 시간입니다.

TASK_INPUT_PARAMS

파라미터는 작업 유형에 따라 다릅니다. 모든 입력 파라미터는 JSON 객체로 표시됩니다. 예를 들어, RESTORE_DB 작업의 JSON 키는 다음과 같습니다.

  • DBNAME

  • RESTORE_TIMESTAMP

  • S3_BUCKET_NAME

  • S3_PREFIX

TASK_OUTPUT

작업에 대한 추가 정보입니다. 기본 복원 중에 오류가 발생하면 이 열에 오류에 대한 정보가 포함됩니다.

응답 예제

다음 응답 예제는 TESTJP라는 데이터베이스가 성공적으로 생성되었음을 보여줍니다. 자세한 내용은 rdsadmin.create_database 저장 프로시저를 참조하세요.

`1 SUCCESS CREATE_DATABASE RDSDB 2023-10-24-18.32.44.962689 2023-10-24-18.34.50.038523 1 TESTJP { "CODESET" : "IBM-437", "TERRITORY" : "JP", "COLLATION" : "SYSTEM", "AUTOCONFIGURE_CMD" : "", "PAGESIZE" : 4096 } 2023-10-24-18.33.30.079048 Task execution has started. 2023-10-24-18.34.50.038523 Task execution has completed successfully`.

다음 응답 예제는 데이터베이스 삭제가 실패한 이유를 설명합니다. 자세한 내용은 rdsadmin.drop_database 저장 프로시저를 참조하세요.

1 ERROR DROP_DATABASE RDSDB 2023-10-10-16.33.03.744122 2023-10-10-16.33.30.143797 - 2023-10-10-16.33.30.098857 Task execution has started. 2023-10-10-16.33.30.143797 Caught exception during executing task id 1, Aborting task. Reason Dropping database created via rds CreateDBInstance api is not allowed. Only database created using rdsadmin.create_database can be dropped

다음 응답 예제는 데이터베이스의 성공적인 복원을 보여줍니다. 자세한 내용은 rdsadmin.restore_database 저장 프로시저를 참조하세요.

1 RESTORE_DB SAMPLE SUCCESS { "S3_BUCKET_NAME" : "amzn-s3-demo-bucket", "S3_PREFIX" : "SAMPLE.0.rdsdb3.DBPART000.20230413183211.001", "RESTORE_TIMESTAMP" : "20230413183211", "BACKUP_TYPE" : "offline" } 2023-11-06-18.31.03.115795 Task execution has started. 2023-11-06-18.31.04.300231 Preparing to download 2023-11-06-18.31.08.368827 Download complete. Starting Restore 2023-11-06-18.33.13.891356 Task Completed Successfully