Notas sobre o Release


14.3 db2relocatedb (Novo Comando)

db2relocatedb - Realocar Banco de Dados

Renomeia um banco de dados ou realoca um banco de dados ou parte dele (por ex., contêiner, diretório de log) conforme especificado no arquivo de configuração fornecido pelo usuário. Esta ferramenta faz as alterações necessárias na instância do DB2 e nos arquivos de suporte do banco de dados.

Autorização

Nenhum

Conexão Requerida

Nenhum

Sintaxe do Comando

>>-db2relocatedb---f--configFilename---------------------------><
 
 

Parâmetros do Comando

-f configFilename
Especifica o nome do arquivo que contém as informações de configuração necessárias para realocar o banco de dados. Esse nome de arquivo pode ser relativo ou absoluto. O formato do arquivo de configuração é:

   DB_NAME=oldName,newName
   DB_PATH=oldPath,newPath
   INSTANCE=oldInst,newInst
   NODENUM=nodeNumber
   LOG_DIR=oldDirPath,newDirPath
   CONT_PATH=oldContPath1,newContPath1
   CONT_PATH=oldContPath2,newContPath2
   ...

Em que:

DB_NAME
Especifica o nome do banco de dados que está sendo realocado. Se o nome do banco de dados estiver sendo alterado, tanto o nome antigo quanto o novo nome deverão ser especificados. Este campo é obrigatório.

DB_PATH
Especifica o caminho do banco de dados que está sendo realocado. Este é o caminho no qual o banco de dados foi originalmente criado. Se o caminho do banco de dados estiver sendo alterado, tanto o caminho antigo quanto o caminho novo deverão ser especificados. Este campo é obrigatório.

INSTANCE
Especifica a instância na qual o banco de dados existe. Se o banco de dados estiver sendo movido para uma nova instância, tanto a instância antiga quanto a instância nova deverão ser especificadas. Este campo é obrigatório.

NODENUM
Especifica o número do nó para o nó do banco de dados que está sendo alterado. O padrão é 0.

LOG_DIR
Especifica uma alteração na localização do caminho do log. Se o caminho do registro estiver sendo mudado, tanto o caminho antigo quanto o novo devem ser especificados. Essa especificação é opcional se caminho do registro residir sob o caminho do banco de dados, caso em que o caminho é atualizado automaticamente.

CONT_PATH
Especifica uma alteração na localização dos contêineres de table space. Os caminhos antigo e novo do contêiner deverão ser especificados. Várias linhas CONT_PATH poderão ser fornecidas se houver várias alterações no caminho do contêiner a serem feitas. Essa especificação é opcional se os caminhos de contêiner residirem sob o caminho do banco de dados, caso em que os caminhos serão atualizados automaticamente.
Nota:
Linhas em branco ou linhas que iniciem com um caractere que indique comentário (#) serão ignoradas.

Exemplos

Exemplo 1

Para alterar o nome do banco de dados TESTDB para PRODDB na instância DB2INST1 que reside no caminho /home/db2inst1, crie o seguinte arquivo de configuração:

    DB_NAME=TESTDB,PRODDB
   DB_PATH=/home/db2inst1
   INSTANCE=db2inst1
   NODENUM=0

Salve o arquivo de configuração como relocate.cfg e utilize o seguinte comando para fazer as alterações nos arquivos de banco de dados:

db2relocatedb -f relocate.cfg

Exemplo 2

Para mover o banco de dados DATAB1 da instância JSMITH no caminho /dbpath para a instância PRODINST, proceda da seguinte maneira:

  1. Mova os arquivos do diretório /dbpath/jsmith para /dbpath/prodinst.
  2. Utilize o seguinte arquivo de configuração com o comando db2relocatedb para fazer as alterações nos arquivos de banco de dados:
       DB_NAME=DATAB1
       DB_PATH=/dbpath
       INSTANCE=jsmith,prodinst
       NODENUM=0
    

Exemplo 3

O banco de dados PRODDB existe na instância INST1 no caminho /databases/PRODDB. A localização de dois contêineres de tablespace precisa ser alterada da seguinte forma:

Depois que os diretórios e arquivos físicos forem movidos para as novas localizações, o seguinte arquivo de configuração poderá ser utilizado com o comando db2relocatedb para fazer alterações nos arquivos de banco de dados para que eles reconheçam as novas localizações:

   DB_NAME=PRODDB
   DB_PATH=/databases/PRODDB
   INSTANCE=inst1
   NODENUM=0
   CONT_PATH=/data/SMS1,/DATA/NewSMS1
   CONT_PATH=/data/DMS1,/DATA/DMS1

Exemplo 4

O banco de dados TESTDB existe na instância DB2INST1 e foi criado no caminho /databases/TESTDB. Table spaces foram criadas com os seguintes contêineres:

   TS1
   TS2_Cont0
   TS2_Cont1
   /databases/TESTDB/TS3_Cont0
   /databases/TESTDB/TS4/Cont0
   /Data/TS5_Cont0
   /dev/rTS5_Cont1

TESTDB será movido para um novo sistema. A instância no novo sistema será NEWINST e a localização do banco de dados será /DB2.

Quando o banco de dados for movido, todos os arquivos existentes no diretório /databases/TESTDB/db2inst1 deverão ser movidos para o diretório /DB2/newinst. Isso significa que os 5 primeiros contêineres serão realocados como parte dessa movimentação. (Os 3 primeiros são relativos ao diretório do banco de dados e os 2 seguintes são relativos ao caminho do banco de dados.) Como esses contêineres estão localizados dentro do diretório do banco de dados ou caminho do banco de dados, eles não precisam ser listados no arquivo de configuração. Se os 2 contêineres restantes tiverem que ser movidos para localizações diferentes no novo sistema, eles deverão ser listados no arquivo de configuração.

Depois que os diretórios e arquivos físicos forem movidos para as novas localizações, o seguinte arquivo de configuração poderá ser utilizado com db2relocatedb para fazer alterações nos arquivos de banco de dados para que eles reconheçam as novas localizações:

   DB_NAME=TESTDB
   DB_PATH=/databases/TESTDB,/DB2
   INSTANCE=db2inst1,newinst
   NODENUM=0
   CONT_PATH=/Data/TS5_Cont0,/DB2/TESTDB/TS5_Cont0
   CONT_PATH=/dev/rTS5_Cont1,/dev/rTESTDB_TS5_Cont1

Exemplo 5

O banco de dados TESTDB possui 2 partições nos nós 10 e 20. A instância é SERVINST e o caminho do banco de dados é /home/servinst em ambos os nós. O nome do banco de dados está sendo alterado para SERVDB e o caminho do banco de dados está sendo alterado para /databases em ambos os nós. Além disso, o diretório de log está sendo alterado no nó 20 de /testdb_logdir para /servdb_logdir.

Como as alterações estão sendo feitas em ambos os nós, um arquivo de configuração deverá ser criado para cada nó e db2relocatedb deverá ser executado em cada nó com o arquivo de configuração correspondente.

No nó 10, o seguinte arquivo de configuração será utilizado:

   DB_NAME=TESTDB,SERVDB
   DB_PATH=/home/servinst,/databases
   INSTANCE=servinst
   NODE_NUM=10

No nó 20, o seguinte arquivo de configuração será utilizado:

   DB_NAME=TESTDB,SERVDB
   DB_PATH=/home/servinst,/databases
   INSTANCE=servinst
   NODE_NUM=20
   LOG_DIR=/testdb_logdir,/servdb_logdir

Notas de Uso

Se a instância à qual um banco de dados pertence estiver sendo alterada, proceda da seguinte maneira antes de executar este comando para assegurar que as alterações nos arquivos de suporte do banco de dados e da instância sejam feitas:

Se a instância estiver sendo alterada, a ferramenta deverá ser executada pelo novo proprietário da instância.

Em um ambiente EEE, essa ferramenta deve ser executada em cada nó que requeira alterações. Um arquivo de configuração separado deverá ser fornecido para cada nó, incluindo o valor NODENUM do nó que estiver sendo alterado. Por exemplo, se o nome de um banco de dados estiver sendo alterado, todos os nós serão afetados e o comando db2relocatedb deverá ser executado com um arquivo de configuração separado em cada nó. Se estiverem sendo movidos contêineres pertencentes a um único nó, o comando db2relocatedb precisará ser executado somente uma vez nesse nó.

Consulte também

Para obter mais informações, consulte o comando db2inidb - Initialize a Mirrored Database na seção Command Reference.


[ Início da Página | Página Anterior | Próxima Página | Índice | Índice Remissivo ]