Referência de função definida pelo usuário do Amazon RDS para Db2
As seguintes funções definidas pelo usuário estão disponíveis para instâncias de banco de dados do Amazon RDS que executam o mecanismo do Db2.
rdsadmin.get_task_status
Exibe o status de uma tarefa.
Sintaxe
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'))"
Parâmetros
Os parâmetros a seguir são opcionais. Se você não fornecer parâmetros, a função definida pelo usuário exibirá o status de todas as tarefas de todos os bancos de dados. O Amazon RDS retém o histórico de tarefas por 35 dias.
task_id
-
O ID da tarefa que está sendo executada. Esse ID é exibido quando você executa uma tarefa. Padrão:
0
. database_name
-
O nome do banco de dados no qual a tarefa está sendo executada.
task_type
-
O tipo da tarefa a ser consultada. Valores válidos:
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
.
Observações de uso
É possível usar a função rdsadmin.get_task_status
definida pelo usuário para conferir o status das tarefas a seguir referentes ao Amazon RDS para Db2. Essa lista não é exaustiva.
-
Criar, alterar ou descartar um grupo de buffers
-
Criar, alterar ou descartar um espaço de tabela
-
Criar ou descartar um banco de dados
-
Restaurar o backup de um banco de dados do Amazon S3
-
Realizando roll forward dos logs de banco de dados do Amazon S3
Exemplos
No exemplo a seguir vemos as colunas exibidas quando rdsadmin.get_task_status
é chamado.
db2 "describe select * from table(rdsadmin.get_task_status())"
O exemplo a seguir lista o status de todas as tarefas.
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))"
O exemplo a seguir lista o status de uma tarefa específica.
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))"
O exemplo a seguir lista o status de uma tarefa e um banco de dados específicos.
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))"
O exemplo a seguir lista o status de todas as tarefas 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'))"
O exemplo a seguir lista o status de todas as tarefas de um banco de dados específico.
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))"
O exemplo a seguir mostra os valores JSON como colunas.
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"
Resposta
A função rdsadmin.get_task_status
definida pelo usuário exibe as seguintes colunas:
TASK_ID
-
O ID da tarefa.
TASK_TYPE
-
Depende dos parâmetros de entrada.
-
ADD_GROUPS
: adiciona grupos. -
ADD_USER
: adiciona um usuário. -
ALTER_BUFFERPOOL
: altera um grupo de buffers. -
ALTER_TABLESPACE
: altera um espaço de tabela. -
CHANGE_PASSWORD
: altera a senha de um usuário. -
COMPLETE_ROLLFORWARD
: conclui uma tarefardsadmin.rollforward_database
e ativa um banco de dados. -
CREATE_BUFFERPOOL
: cria um grupo de buffers. -
CREATE_DATABASE
: cria um banco de dados. -
CREATE_ROLE
: cria um perfil do Db2 para um usuário. -
CREATE_TABLESPACE
: cria um espaço de tabela. -
DROP_BUFFERPOOL
: descarta um grupo de buffers. -
DROP_DATABASE
: descarta um banco de dados. -
DROP_TABLESPACE
: descarta um espaço de tabela. -
LIST_USERS
: lista todos os usuários. -
REMOVE_GROUPS
: remove os grupos. -
REMOVE_USER
: remove um usuário. -
RESTORE_DB
: restaura um banco de dados completo. -
ROLLFORWARD_DB_LOG
: executa uma tarefardsadmin.rollforward_database
nos logs do banco de dados. -
ROLLFORWARD_STATUS
: retorna o status de uma tarefardsadmin.rollforward_database
. -
UPDATE_DB_PARAM
: atualiza os parâmetros de dados.
-
DATABASE_NAME
-
O nome do banco de dados ao qual a tarefa está associada.
COMPLETED_WORK_BYTES
-
O número de bytes restaurados pela tarefa.
DURATION_MINS
-
O tempo necessário para concluir a tarefa.
LIFECYCLE
-
O status da tarefa. Possíveis status:
-
CREATED
: depois que uma tarefa é enviada ao Amazon RDS, o Amazon RDS define o status comoCREATED
. -
IN_PROGRESS
: depois de iniciar uma tarefa, o Amazon RDS define o status comoIN_PROGRESS
. Pode demorar até cinco minutos para que o status mude deCREATED
paraIN_PROGRESS
. -
SUCCESS
: após o término de uma tarefa, o Amazon RDS define o status comoSUCCESS
. -
ERROR
: se uma tarefa de restauração falhar, o Amazon RDS definirá o status comoERROR
. Para ter mais informações sobre o erro, consulteTASK_OUPUT
.
-
CREATED_BY
-
O
authid
que criou o comando. CREATED_AT
-
A data e hora em que a tarefa foi criada.
LAST_UPDATED_AT
-
A data e a hora em que a tarefa foi atualizada pela última vez.
TASK_INPUT_PARAMS
-
Os parâmetros diferem com base no tipo de tarefa. Todos os parâmetros de entrada são representados como um objeto JSON. Por exemplo, as chaves JSON para a tarefa
RESTORE_DB
são as seguintes:-
DBNAME
-
RESTORE_TIMESTAMP
-
S3_BUCKET_NAME
-
S3_PREFIX
-
TASK_OUTPUT
-
Informações adicionais sobre a tarefa. No caso de erro durante a restauração nativa, essa coluna inclui as informações sobre o erro.
Exemplos de resposta
O exemplo de resposta a seguir mostra que um banco de dados chamado TESTJP
foi criado com êxito. Para ter mais informações, consulte o procedimento armazenando 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`.
O exemplo de resposta a seguir explica por que o descarte de um banco de dados falhou. Para ter mais informações, consulte o procedimento armazenando 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
O exemplo de resposta a seguir mostra a restauração bem-sucedida de um banco de dados. Para ter mais informações, consulte o procedimento armazenando 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
rdsadmin.list_databases
Retorna uma lista de todos os bancos de dados em execução em uma instância de banco de dados do RDS para Db2.
Sintaxe
db2 "select * from table(rdsadmin.list_databases())"
Observações de uso
Essa função definida pelo usuário não especifica se os bancos de dados estão em um estado ativado ou desativado.
Se você não vir seus bancos de dados na lista, chame a função definida pelo usuário rdsadmin.get_task_status e procure mensagens de erro.
Resposta
A função rdsadmin.list_databases
definida pelo usuário exibe as seguintes colunas:
DATABASE_NAME
-
O nome de um banco de dados.
CREATE_TIME
-
A data e a hora em que o banco de dados foi criado.
Exemplos de resposta
O exemplo de resposta a seguir mostra uma lista de bancos de dados e os horários em que eles foram criados. rdsadmin
é um banco de dados que o Amazon RDS gerencia e sempre aparece na saída.
DATABASE_NAME CREATE_TIME --------------- -------------------------- rdsadmin 2024-10-22-03.37.48.535671 TEST 2024-10-22-03.39.36.818679 TEST1 2024-10-22-03.57.15.218009 TEST2 2024-10-22-03.59.28.029556