Procedimentos armazenados para bancos de dados do RDS para Db2 - Amazon Relational Database Service

Procedimentos armazenados para bancos de dados do RDS para Db2

Os procedimentos integrados armazenados descritos neste tópico gerenciam bancos de dados do Amazon RDS para Db2. Para executar esses procedimentos, o usuário principal deve primeiro se conectar ao banco de dados rdsadmin.

Esses procedimentos armazenados são usados em diversas tarefas. Essa lista não é exaustiva.

Consulte os seguintes procedimentos integrados armazenados para obter informações sobre sintaxe, parâmetros, notas de uso e exemplos.

rdsadmin.create_database

Cria um banco de dados.

Sintaxe

db2 "call rdsadmin.create_database('database_name')"

Parâmetros

nota

Esse procedimento armazenado não valida a combinação dos parâmetros obrigatórios. Ao chamar rdsadmin.get_task_status, a função definida pelo usuário pode exibir um erro devido a uma combinação inválida de database_codeset, database_territory e database_collation. Para ter mais informações, consulte Choosing the code page, territory, and collation for your database na documentação do IBM Db2.

O seguinte parâmetro é obrigatório:

database_name

O nome do banco de dados a ser criado. O tipo de dados é varchar.

Os seguintes parâmetros são opcionais:

database_page_size

O tamanho padrão da página do banco de dados. Valores válidos: 4096, 8192, 16384, 32768. O tipo de dados é integer. O padrão é 8192.

Importante

O Amazon RDS é compatível com a atomicidade de gravação para páginas de 4 KiB, 8 KiB e 16 KiB. Por outro lado, páginas de 32 KiB correm o risco de interromper gravações ou de dados parciais serem gravados na mesa. Se estiver usando páginas de 32 KiB, recomendamos habilitar a recuperação para um ponto no tempo e os backups automatizados. Caso contrário, você corre o risco de não conseguir se recuperar de páginas interrompidas. Para obter mais informações, consulte Introdução aos backups e Restaurar uma instância de banco de dados para um momento especificado no Amazon RDS.

database_code_set

O conjunto de códigos do banco de dados. O tipo de dados é varchar. O padrão é UTF-8.

database_territory

O código de duas letras do país para o banco de dados. O tipo de dados é varchar. O padrão é US.

database_collation

A sequência de agrupamentos determina como as strings de caracteres armazenadas no banco de dados são classificadas e comparadas. O tipo de dados é varchar.

Valores válidos:

  • COMPATIBILITY: uma sequência de agrupamento do IBM Db2 Versão 2.

  • EBCDIC_819_037: página de código ISO Latin, agrupamento; CCSID 037 (inglês dos EUA EBCDIC).

  • EBCDIC_819_500: página de código ISO Latin, agrupamento; CCSID 500 (EBCDIC internacional).

  • EBCDIC_850_037: página de código ASCII Latin, agrupamento; CCSID 037 (inglês dos EUA EBCDIC).

  • EBCDIC_850_500: página de código ASCII Latin, agrupamento; CCSID 500 (EBCDIC internacional).

  • EBCDIC_932_5026: página de código ASCII Japanese, agrupamento; CCSID 5026 (EBCDIC em inglês dos EUA).

  • EBCDIC_932_5035: página de código ASCII Japanese, agrupamento; CCSID 5035 (EBCDIC internacional).

  • EBCDIC_1252_037: página de código Windows Latin, agrupamento; CCSID 037 (inglês dos EUA EBCDIC).

  • EBCDIC_1252_500: página de código Windows Latin, agrupamento; CCSID 500 (EBCDIC internacional).

  • IDENTITY: agrupamento padrão. As strings são comparadas byte por byte.

  • IDENTITY_16BIT: o esquema de codificação de compatibilidade para UTF-16: sequência de agrupamento de 8 bits (CESU-8). Para ter mais informações, consulte o Unicode Technical Report #26 do site do Unicode Consortium.

  • NLSCHAR: somente para uso com a página de código Thai (CP874).

  • SYSTEM: se você usar SYSTEM, o banco de dados usará a sequência de agrupamento automaticamente para database_codeset e database_territory.

O padrão é IDENTITY.

Além disso, o RDS para Db2 é compatível com os seguintes grupos de agrupamentos: language-aware-collation e locale-sensitive-collation. Para ter mais informações, consulte Choosing a collation for a Unicode database na documentação do IBM Db2.

database_autoconfigure_str

A sintaxe do comando AUTOCONFIGURE, por exemplo, 'AUTOCONFIGURE APPLY DB'. O tipo de dados é varchar. O padrão é uma string vazia ou nula.

Para ter mais informações, consulte AUTOCONFIGURE command na documentação do IBM Db2.

Observações de uso

Se você planeja modificar o parâmetro db2_compatibility_vector, modifique-o antes de criar um banco de dados. Para obter mais informações, consulte Configuração do parâmetro db2_compatibility_vector.

Considerações especiais:

  • O comando CREATE DATABASE enviado à instância do Db2 usa a opção RESTRICTIVE.

  • O RDS para Db2 usa somente tablespaces AUTOMATIC STORAGE.

  • O RDS para Db2 usa os valores padrão para NUMSEGS e DFT_EXTENT_SZ.

  • O RDS para Db2 usa criptografia de armazenamento e não comporta a criptografia de banco de dados.

Para ter mais informações sobre essas considerações, consulte CREATE DATABASE command na documentação do IBM Db2.

Antes de chamar rdsadmin.create_database, é necessário se conectar ao banco de dados rdsadmin. No seguinte exemplo, substitua master_username e master_password pelas informações da instância de banco de dados do RDS para Db2:

db2 connect to rdsadmin user master_username using master_password

Para ter informações sobre como conferir o status de criação de um banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.create_database, consulte Erros de procedimentos armazenados.

Exemplos

O seguinte exemplo cria um banco de dados chamado TESTJP com uma combinação correta dos parâmetros database_code_set, database_territory e database_collation para o Japão:

db2 "call rdsadmin.create_database('TESTJP', 4096, 'IBM-437', 'JP', 'SYSTEM')"

rdsadmin.deactivate_database

Desativa um banco de dados.

Sintaxe

db2 "call rdsadmin.deactivate_database( ?, 'database_name')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

database_name

O nome do banco de dados a ser desativado. O tipo de dados é varchar.

Observações de uso

É possível desativar bancos de dados para conservar recursos de memória ou para fazer outras alterações na configuração do banco de dados. Para colocar os bancos de dados desativados novamente on-line, chame o procedimento armazenado rdsadmin.activate_database.

Para ter informações sobre como conferir o status de desativação de um banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.deactivate_database, consulte Erros de procedimentos armazenados.

Exemplos

O exemplo a seguir desativa um banco de dados chamado TESTDB.

db2 "call rdsadmin.deactivate_database(?, 'TESTDB')"

rdsadmin.activate_database

Ativa um banco de dados.

Para obter informações sobre as diferenças entre rdsadmin.reactivate_database e rdsadmin.activate_database, consulte Observações de uso.

Sintaxe

db2 "call rdsadmin.activate_database( ?, 'database_name')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

database_name

O nome do banco de dados a ser ativado. O tipo de dados é varchar.

Observações de uso

Todos os bancos de dados são ativados por padrão quando são criados. Se você desativar um banco de dados em uma instância de banco de dados autônoma para conservar recursos de memória ou fazer outras alterações na configuração do banco de dados, chame o procedimento rdsadmin.activate_database armazenado para ativar o banco de dados novamente.

Para ter informações sobre como conferir o status de ativação de um banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.activate_database, consulte Erros de procedimentos armazenados.

Exemplos

O exemplo a seguir ativa um banco de dados chamado TESTDB.

db2 "call rdsadmin.activate_database(?, 'TESTDB')"

rdsadmin.reactivate_database

Reativa um banco de dados.

Para ter informações sobre as diferenças entre rdsadmin.activate_database e rdsadmin.reactivate_database, consulte Observações de uso.

Sintaxe

db2 "call rdsadmin.reactivate_database( ?, 'database_name')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

database_name

O nome do banco de dados a ser reativado. O tipo de dados é varchar.

Observações de uso

Quando você chama o procedimento armazenado rdsadmin.reactivate_database, primeiro ele desativa o banco de dados chamando o procedimento armazenado rdsadmin.deactivate_database e, depois, ativa o banco de dados chamando o procedimento armazenado rdsadmin.activate_database.

Depois de fazer alterações nas configurações do banco de dados, talvez seja necessário reativar um banco de dados em uma instância de banco de dados do RDS para Db2. Para determinar se você precisa reativar um banco de dados, conecte-se a ele e execute db2 get db cfg show detail.

Para um banco de dados em uma instância de banco de dados autônoma, você pode usar o procedimento armazenado rdsadmin.reactivate_database para reativar o banco de dados. Ou, se você já chamou o procedimento armazenado rdsadmin.deactivate_database, você pode chamar o procedimento armazenado rdsadmin.activate_database em vez disso.

Para ter informações sobre como conferir o status de reativação de um banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.reactivate_database, consulte Erros de procedimentos armazenados.

Exemplos

O exemplo a seguir reativa um banco de dados chamado TESTDB.

db2 "call rdsadmin.reactivate_database(?, 'TESTDB')"

rdsadmin.drop_database

Remove um banco de dados.

Sintaxe

db2 "call rdsadmin.drop_database('database_name')"

Parâmetros

O seguinte parâmetro é obrigatório:

database_name

O nome do banco de dados a ser descartado. O tipo de dados é varchar.

Observações de uso

Será possível descartar um banco de dados chamando rdsadmin.drop_database somente se as seguintes condições forem atendidas:

  • Você não especificou o nome do banco de dados ao criar a instância de banco de dados do RDS para Db2 usando o console do Amazon RDS ou a AWS CLI. Para obter mais informações, consulte Criar uma instância de banco de dados.

  • Você criou o banco de dados chamando o procedimento armazenado rdsadmin.create_database.

  • Você restaurou o banco de dados por meio de uma imagem off-line ou de backup chamando o procedimento armazenado rdsadmin.restore_database.

Antes de chamar rdsadmin.drop_database, é necessário se conectar ao banco de dados rdsadmin. No seguinte exemplo, substitua master_username e master_password pelas informações da instância de banco de dados do RDS para Db2:

db2 connect to rdsadmin user master_username using master_password

Para ter informações sobre como conferir o status de descarte de um banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.drop_database, consulte Erros de procedimentos armazenados.

Exemplos

O seguinte exemplo descarta um banco de dados chamado TESTDB:

db2 "call rdsadmin.drop_database('TESTDB')"

rdsadmin.update_db_param

Atualiza parâmetros do banco de dados.

Sintaxe

db2 "call rdsadmin.update_db_param( 'database_name', 'parameter_to_modify', 'changed_value)"

Parâmetros

Os seguintes parâmetros são obrigatórios:

database_name

O nome do banco de dados para o qual executar a tarefa. O tipo de dados é varchar.

parameter_to_modify

O nome do parâmetro a ser modificado. O tipo de dados é varchar. Para obter mais informações, consulte Parâmetros do Amazon RDS para Db2.

changed_value

O valor para o qual o valor de parâmetro será alterado. O tipo de dados é varchar.

Observações de uso

Para ter informações sobre como conferir o status de atualização dos parâmetros do banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.update_db_param, consulte Erros de procedimentos armazenados.

Exemplos

Exemplo 1: atualização de um parâmetro

O seguinte exemplo atualiza o parâmetro archretrydelay para 100 para um banco de dados chamado TESTDB:

db2 "call rdsadmin.update_db_param( 'TESTDB', 'archretrydelay', '100')"

Exemplo 2: adiamento da validação de objetos

O seguinte exemplo adia a validação de objetos criados em um banco de dados chamado TESTDB para evitar a verificação de dependências:

db2 "call rdsadmin.update_db_param( 'TESTDB', 'auto_reval', 'deferred_force')"

rdsadmin.set_configuration

Define configurações específicas do banco de dados.

Sintaxe

db2 "call rdsadmin.set_configuration( 'name', 'value')"

Parâmetros

Os seguintes parâmetros são obrigatórios:

name

O nome do ajuste de configurações. O tipo de dados é varchar.

value

O valor da configuração. O tipo de dados é varchar.

Observações de uso

A tabela a seguir mostra as configurações que podem ser controladas com rdsadmin.set_configuration.

Nome Descrição

RESTORE_DATABASE_NUM_BUFFERS

O número de buffers a serem criados durante uma operação de restauração. Esse valor deve ser menor que o tamanho total de memória da classe de instância de banco de dados. Se essa configuração não estiver definida, o Db2 determinará o valor a ser usado durante a operação de restauração. Para obter mais informações, consulte a documentação do IBM Db2.

RESTORE_DATABASE_PARALLELISM

O número de manipuladores de buffer a serem criados durante uma operação de restauração. Esse valor deve ser menor que o dobro do número de vCPUs da instância de banco de dados. Se essa configuração não estiver definida, o Db2 determinará o valor a ser usado durante a operação de restauração. Para obter mais informações, consulte a documentação do IBM Db2.

Exemplos

Exemplo 1: especificação do número de manipuladores de buffer a serem criados

O exemplo a seguir define a configuração RESTORE_DATABASE_PARALLELISM como 8.

db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_PARALLELISM', '8')"

Exemplo 2: especificação do número de buffers a serem criados

O exemplo a seguir define a configuração RESTORE_DATABASE_NUM_BUFFERS como 150.

db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_NUM_BUFFERS', '150')"

rdsadmin.show_configuration

Exibe as configurações atuais que você pode definir usando o procedimento armazenado rdsadmin.set_configuration.

Sintaxe

db2 "call rdsadmin.show_configuration( 'name')"

Parâmetros

O seguinte parâmetro é opcional:

name

O nome da configuração sobre a qual exibir informações. O tipo de dados é varchar.

Os seguintes nomes de configuração são válidos:

  • RESTORE_DATABASE_NUM_BUFFERS: o número de buffers a serem criados durante uma operação de restauração.

  • RESTORE_DATABASE_PARALLELISM: o número de manipuladores de buffer a serem criados durante uma operação de restauração.

Observações de uso

Se você não especificar o nome de uma configuração, rdsadmin.show_configuration exibirá as informações de todas as configurações que você pode definir usando o procedimento armazenado rdsadmin.set_configuration.

Exemplos

O exemplo a seguir exibe informações sobre a configuração RESTORE_DATABASE_PARALLELISM atual.

db2 "call rdsadmin.show_configuration( 'RESTORE_DATABASE_PARALLELISM')"

rdsadmin.restore_database

Restaura um banco de dados de um bucket do Amazon S3 para a instância de banco de dados do RDS para Db2.

Sintaxe

db2 "call rdsadmin.restore_database( ?, 'database_name', 's3_bucket_name', 's3_prefix', restore_timestamp, 'backup_type')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados de destino a ser restaurado no RDS para Db2. O tipo de dados é varchar.

Por exemplo, se o nome do banco de dados de origem for TESTDB e você definir database_name como NEWDB, o Amazon RDS restaurará NEWDB como o banco de dados de origem.

s3_bucket_name

O nome do bucket do Amazon S3 onde reside o backup. O tipo de dados é varchar.

s3_prefix

O prefixo a ser usado para correspondência de arquivos durante o download. O tipo de dados é varchar.

Se esse parâmetro estiver vazio, todos os arquivos no bucket do Amazon S3 serão baixados. Veja a seguir um exemplo de prefixo:

backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101
restore_timestamp

O carimbo de data e hora da imagem de backup do banco de dados. O tipo de dados é varchar.

O carimbo de data e hora está incluído no nome do arquivo de backup. Por exemplo, 20230615010101 é o carimbo de data e hora do nome do arquivo. SAMPLE.0.rdsdb.DBPART000.20230615010101.001.

backup_type

O tipo de backup. O tipo de dados é varchar. Valores válidos: OFFLINE, ONLINE.

Use ONLINE para migrações com tempo de inatividade quase zero. Para obter mais informações, consulte Migrar do Linux para Linux com quase zero tempo de inatividade para o Amazon RDS para Db2.

Observações de uso

Você pode usar esse procedimento armazenado para migrar um banco de dados do Db2 para uma instância de banco de dados do RDS para Db2. Para obter mais informações, consulte Usar serviços da AWS para migrar dados do Db2 para o Amazon RDS para Db2. Também é possível usar esse procedimento armazenado para criar várias cópias do mesmo banco de dados com nomes de banco de dados diferentes que usam a mesma imagem de restauração.

Antes de chamar o procedimento armazenado, examine estas considerações:

  • Antes de restaurar um banco de dados, é necessário provisionar espaço de armazenamento para a instância de banco de dados do RDS para Db2 igual ou maior que a soma do tamanho do backup, e o banco de dados do Db2 original no disco. Para obter mais informações, consulte Insufficient disk space.

  • Ao restaurar o backup, o Amazon RDS extrai o arquivo de backup na instância de banco de dados do RDS para Db2. Cada arquivo de backup deve ter 5 TB ou menos. Se um arquivo de backup exceder 5 TB, você deverá dividi o arquivo de backup em arquivos menores.

  • Para restaurar todos os arquivos usando o procedimento armazenado rdsadmin.restore_database, não inclua o sufixo do número do arquivo após o carimbo de data e hora nos nomes dos arquivos. Por exemplo, o s3_prefix backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101 restaura os seguintes arquivos:

    SAMPLE.0.rdsdb.DBPART000.20230615010101.001 SAMPLE.0.rdsdb.DBPART000.20230615010101.002 SAMPLE.0.rdsdb.DBPART000.20230615010101.003 SAMPLE.0.rdsdb.DBPART000.20230615010101.004 SAMPLE.0.rdsdb.DBPART000.20230615010101.005
  • O RDS para Db2 não permite armazenamento não automático. Para obter mais informações, consulte Tablespaces not restored.

  • O RDS para Db2 não permite rotinas não protegidas. Para obter mais informações, consulte Non-fenced routines not allowed.

  • Para melhorar a performance das operações de restauração do banco de dados, é possível configurar o número de buffers e manipuladores de buffer a serem usados pelo RDS. Para conferir a configuração atual, use rdsadmin.show_configuration. Para alterar a configuração, use rdsadmin.set_configuration.

Para colocar o banco de dados on-line e aplicar logs de transações adicionais após a restauração do banco de dados, consulte rdsadmin.rollforward_database.

Para ter informações sobre como conferir o status de restauração de um banco de dados, consulte rdsadmin.get_task_status.

Para ver as mensagens de erro exibidas ao chamar rdsadmin.restore_database, consulte Erros de procedimentos armazenados.

Exemplos

O seguinte exemplo restaura um backup off-line com um ou vários arquivos que têm o s3_prefix backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101:

db2 "call rdsadmin.restore_database( ?, 'SAMPLE', 'amzn-s3-demo-bucket', 'backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101', 20230615010101, 'OFFLINE')"

rdsadmin.rollforward_database

Coloca o banco de dados on-line e aplica logs de transações adicionais depois de restaurar um banco de dados chamando rdsadmin.restore_database.

Sintaxe

db2 "call rdsadmin.rollforward_database( ?, 'database_name', 's3_bucket_name', s3_prefix, 'rollforward_to_option', 'complete_rollforward')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados no qual a operação deve ser realizada. O tipo de dados é varchar.

s3_bucket_name

O nome do bucket do Amazon S3 onde reside o backup. O tipo de dados é varchar.

s3_prefix

O prefixo a ser usado para correspondência de arquivos durante o download. O tipo de dados é varchar.

Se esse parâmetro estiver vazio, todos os arquivos no bucket do S3 serão baixados. O seguinte exemplo é de um prefixo:

backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101

Os seguintes parâmetros de entrada são opcionais:

rollforward_to_option

O ponto até o qual você pretende efetuar roll forward. O tipo de dados é varchar. Valores válidos: END_OF_LOGS, END_OF_BACKUP. O padrão é END OF LOGS.

complete_rollforward

Especifica se o processo de efetuar roll forward deve ser concluído. O tipo de dados é varchar. O padrão é TRUE.

Se TRUE, após a conclusão, o banco de dados estará on-line e acessível. Se FALSE, o banco de dados permanecerá em um estado ROLL-FORWARD PENDING.

Observações de uso

Depois de chamar rdsadmin.restore_database, será necessário chamar rollforward_database para aplicar os logs de arquivamento de um bucket do S3. Também é possível usar esse procedimento armazenado para restaurar logs de transações adicionais depois de chamar rdsadmin.restore_database.

Se você definir complete_rollforward como FALSE, o banco de dados estará em um estado ROLL-FORWARD PENDING e off-line. Para colocar o banco de dados on-line, é necessário chamar rdsadmin.complete_rollforward.

Para ter informações sobre como conferir o status da realização de roll forward do banco de dados, consulte rdsadmin.get_task_status.

Exemplos

Exemplo 1: colocação do banco de dados com logs de transações online

O seguinte exemplo efetua roll forward em um backup on-line do banco de dados com logs de transações e, depois, coloca o banco de dados on-line:

db2 "call rdsadmin.rollforward_database( ?, null, null, 'END_OF_LOGS', 'TRUE')"

Exemplo 2: colocação do banco de dados sem logs de transações online

O seguinte exemplo avança para um backup on-line do banco de dados sem logs de transações e, depois, coloca o banco de dados on-line:

db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/, 'END_OF_BACKUP', 'TRUE')"

Exemplo 3: sem colocação do banco de dados com logs de transações online

O seguinte exemplo efetua roll forward em um backup on-line do banco de dados com logs de transações e, depois, não coloca o banco de dados on-line:

db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', null, 'onlinebackup/TESTDB', 'END_OF_LOGS', 'FALSE')"

Exemplo 4: sem colocação do banco de dados com logs de transações adicionais online

O seguinte exemplo efetua roll forward em um backup on-line do banco de dados com logs de transações adicionais e, depois, não coloca o banco de dados on-line.

db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/S0000155.LOG', 'END_OF_LOGS', 'FALSE')"

rdsadmin.complete_rollforward

Coloca o banco de dados on-line de um estado ROLL-FORWARD PENDING.

Sintaxe

db2 "call rdsadmin.complete_rollforward( ?, 'database_name')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

database_name

O nome do banco de dados que você deseja colocar on-line. O tipo de dados é varchar.

Observações de uso

Se você chamou rdsadmin.rollforward_database com complete_rollforward definido como FALSE, o banco de dados está em um estado ROLL-FORWARD PENDING e offline. Para concluir o processo de roll forward e colocar o banco de dados on-line, chame rdsadmin.complete_rollforward.

Para ter informações sobre como conferir o status da realização de roll forward, consulte rdsadmin.get_task_status.

Exemplos

O seguinte exemplo coloca o banco de dados TESTDB on-line:

db2 "call rdsadmin.complete_rollforward( ?, 'TESTDB')"

rdsadmin.db2pd_command

Coleta informações sobre um banco de dados do RDS para Db2.

Sintaxe

db2 "call rdsadmin.db2pd_command('db2pd_cmd')"

Parâmetros

O seguinte parâmetro de entrada é obrigatório:

db2pd_cmd

O nome do comando db2pd que você deseja executar. O tipo de dados é varchar.

O parâmetro deve começar com um hífen. Para ver uma lista de parâmetros, consulte db2pd - Monitor and troubleshoot Db2 database command na documentação do .

As seguintes opções não são compatíveis:

  • -addnode

  • -alldatabases

  • -alldbp

  • -alldbs

  • -allmembers

  • -alm_in_memory

  • -cfinfo

  • -cfpool

  • -command

  • -dbpartitionnum

  • -debug

  • -dump

  • -everything

  • -file | -o

  • -ha

  • -interactive

  • -member

  • -pages

    nota

    O -pages summary é compatível.

  • -pdcollection

  • -repeat

  • -stack

  • -totalmem

A subopção file não é compatível; por exemplo, db2pd -db testdb -tcbstats file=tcbstat.out.

O uso da opção stacks não é compatível; por exemplo, db2pd -edus interval=5 top=10 stacks.

Observações de uso

Esse procedimento armazenado reúne informações que podem ajudar no monitoramento e na solução de problemas de bancos de dados do RDS para Db2.

O procedimento armazenado usa o utilitário db2pd da IBM para executar vários comandos. O utilitário db2pd exige a autorização SYSADM, que o usuário principal do RDS para Db2 não tem. No entanto, com o procedimento armazenado do Amazon RDS, o usuário principal pode usar o utilitário para executar vários comandos. Para ter mais informações sobre o utilitário, consulte db2pd - Monitor and troubleshoot Db2 database command na documentação do IBM Db2.

A saída é restrita a no máximo 2 GB.

Para ter informações sobre como conferir o status da coleta de informações sobre o banco de dados, consulte rdsadmin.get_task_status.

Exemplos

Exemplo 1: retorno do tempo de atividade da instância de banco de dados

O seguinte exemplo exibe o tempo de atividade de uma instância de banco de dados do RDS para Db2:

db2 "call rdsadmin.db2pd_command('-')"

Exemplo 2: retorno do tempo de atividade do banco de dados

O seguinte exemplo exibe o tempo de atividade de um banco de dados chamado TESTDB:

db2 "call rdsadmin.db2pd_command('-db TESTDB -')"

Exemplo 3: retorno do uso de memória da instância de banco de dados

O seguinte exemplo exibe o uso de memória de uma instância de banco de dados do RDS para Db2:

db2 "call rdsadmin.db2pd_command('-dbptnmem')"

Exemplo 4: retorno de conjuntos de memória da instância de banco de dados e do banco de dados

O seguinte exemplo exibe os conjuntos de memória de uma instância de banco de dados do RDS para Db2 e um banco de dados denominado TESTDB:

db2 "call rdsadmin.db2pd_command('-inst -db TESTDB -memsets')"

rdsadmin.force_application

Força a retirada das aplicações de um banco de dados do RDS para Db2.

Sintaxe

db2 "call rdsadmin.force_application( ?, 'applications')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

applications

As aplicações cuja retirada de um banco de dados do RDS para Db2 você deseja forçar. O tipo de dados é varchar. Valores válidos: ALL ou application_handle.

Separe os nomes de várias aplicações com vírgulas. Exemplo: “application_handle_1, application_handle_2”.

Observações de uso

Esse procedimento armazenado força a retirada de todas as aplicações de um banco de dados para que você possa realizar a manutenção.

O procedimento armazenado usa o comando FORCE APPLICATION da IBM. O comando FORCE APPLICATION exige autorização SYSADM, SYSMAINT ou SYSCTRL, que o usuário principal do RDS para Db2 não tem. No entanto, com o procedimento armazenado do Amazon RDS, o usuário principal pode usar o comando. Para ter mais informações, consulte FORCE APPLICATION command na documentação do IBM Db2.

Para ter informações sobre como conferir o status da retirada forçada de aplicações de um banco de dados, consulte rdsadmin.get_task_status.

Exemplos

Exemplo 1: especificação de todas as aplicações

O seguinte exemplo força a retirada de todas as aplicações de um banco de dados do RDS para Db2:

db2 "call rdsadmin.force_application( ?, 'ALL')"

Exemplo 2: especificação de várias aplicações

O seguinte exemplo força a retirada de todos os manipuladores de aplicações 9991, 8891 e 1192 de um banco de dados do RDS para Db2:

db2 "call rdsadmin.force_application( ?, '9991, 8891, 1192')"

rdsadmin.set_archive_log_retention

Configura o intervalo de tempo (em horas) para retenção dos arquivos de log do banco de dados do RDS para Db2 especificado.

Sintaxe

db2 "call rdsadmin.set_archive_log_retention( ?, 'database_name', 'archive_log_retention_hours')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

Os seguintes parâmetros de entrada são obrigatórios:

database_name

O nome do banco de dados cuja retenção de logs será configurada. O tipo de dados é varchar.

archive_log_retention_hours

O número de horas de retenção dos arquivos de log. O tipo de dados é smallint. O padrão é 0 e o máximo é 168 (sete dias).

Se o valor for 0, o Amazon RDS não reterá os arquivos de log.

Observações de uso

Por padrão, o RDS para Db2 retém os logs por cinco minutos. Recomendamos que, se você usar ferramentas de replicação, como o AWS DMSpara captura de dados de alteração (CDC) ou IBM Q Replication, defina a retenção de logs nessas ferramentas como mais de cinco minutos.

É possível visualizar a configuração atual de retenção de logs chamando rdsadmin.show_archive_log_retention.

Não é possível definir a configuração de retenção de logs no banco de dados rdsadmin.

Exemplos

Exemplo 1: configuração do tempo de retenção

O exemplo a seguir define o tempo de retenção de logs de um banco de dados chamado TESTDB como 24 horas.

db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '24')"

Exemplo 2: desativação do tempo de retenção

O exemplo a seguir desativa o tempo de retenção de logs de um banco de dados chamado TESTDB.

db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '0')"

rdsadmin.show_archive_log_retention

Exibe a configuração atual de retenção de logs do banco de dados especificado.

Sintaxe

db2 "call rdsadmin.show_archive_log_retention( ?, 'database_name')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

database_name

O nome do banco de dados cuja configuração de retenção de logs será mostrada. O tipo de dados é varchar.

Exemplos

O exemplo a seguir mostra a configuração de tempo de retenção de logs de um banco de dados chamado TESTDB.

db2 "call rdsadmin.show_archive_log_retention( ? 'TESTDB')"

rdsadmin.list_archive_log_information

Retorna detalhes sobre os arquivos de log de arquivamento, como o tamanho, a data e a hora de criação e o nome dos arquivos de log individuais para o banco de dados especificado. Também retorna a quantidade total de armazenamento usada pelos arquivos de log no banco de dados.

Sintaxe

db2 "call rdsadmin.list_archive_log_information( ?, 'database_name')"

Parâmetros

O seguinte parâmetro de saída é obrigatório:

?

Um marcador de parâmetro que gera uma mensagem de erro. Esse parâmetro aceita apenas ?.

O seguinte parâmetro de entrada é obrigatório:

database_name

O nome do banco de dados para o qual listar as informações de log de arquivamento. O tipo de dados é varchar.

Exemplos

O exemplo a seguir retorna informações de log de arquivamento para um banco de dados chamado TESTDB.

db2 "call rdsadmin.list_archive_log_information( ? 'TESTDB')"