Conectar-se à instância de banco de dados do Amazon RDS para Db2 com o IBM Db2 CLP
É possível usar um utilitário de linha de comandos, como IBM Db2 CLP, para se conectar a instâncias de banco de dados do Amazon RDS para Db2. Esse utilitário faz parte do IBM Data Server Runtime Client. Para baixar o cliente do IBM Fix Central, consulte IBM Data Server Client Packages Version 11.5 Mod 8 Fix Pack 0
Tópicos
Terminologia
Os termos a seguir ajudam a explicar os comandos usados ao se conectar à instância de banco de dados do RDS para Db2.
- catalog tcpip node
-
Esse comando registra um nó de banco de dados remoto com um cliente Db2 local, o que torna o nó acessível à aplicação cliente. Para catalogar um nó, você vai fornecer informações, como nome do host, número da porta e protocolo de comunicação do servidor. O nó catalogado então representa um servidor de destino onde residem um ou mais bancos de dados remotos. Para ter mais informações, consulte CATALOG TCPIP/TCPIP4/TCPIP6 NODE command
na documentação do IBM Db2. - catalog database
-
Esse comando registra um banco de dados remoto com um cliente Db2 local, o que torna o banco de dados acessível à aplicação cliente. Para catalogar um banco de dados, você vai fornecer informações, como o alias do banco de dados, o nó no qual ele reside e o tipo de autenticação necessário para se conectar ao banco de dados. Para ter mais informações, consulte CATALOG DATABASE command
na documentação do IBM Db2.
Instalar o cliente
Depois de downloading the package for Linux, instale o cliente usando privilégios raiz ou de administrador.
nota
Para instalar o cliente no AIX ou no Windows, siga o mesmo procedimento, mas modifique os comandos do sistema operacional.
Como instalar o cliente no Linux
-
Execute
./db2_install -f sysreq
e escolhayes
para aceitar a licença. -
Selecione o local para instalar o cliente.
-
Execute
clientInstallDir/instance/db2icrt -s client
instance_name
. Substituainstance_name
por um usuário válido do sistema operacional no Linux. Em Linux, o nome da instância de banco de dados do Db2 está vinculado ao nome de usuário do sistema operacional.Esse comando cria um diretório
sqllib
no diretório inicial do usuário designado no Linux.
Conexão a uma instância de banco de dados
Para se conectar à instância de banco de dados do RDS para Db2, você precisa do nome do DNS e do número da porta. Para ter informações sobre como descobri-los, consulte Encontrar o endpoint. Também é necessário saber o nome do banco de dados, o nome de usuário principal e a senha mestra que você definiu ao criar a instância de banco de dados do RDS para Db2. Para ter mais informações sobre como descobri-los, consulte Criar uma instância de banco de dados.
Como se conectar a uma instância de banco de dados do RDS para Db2 com IBM Db2 CLP
-
Faça login com o nome de usuário que você especificou durante a instalação do cliente IBM Db2 CLP.
-
Catalogue a instância de banco de dados do RDS para Db2. No exemplo a seguir, substitua
node_name
,dns_name
eport
por um nome para o nó no catálogo local, o nome do DNS da instância de banco de dados e o número da porta.db2 catalog TCPIP node
node_name
remotedns_name
serverport
Exemplo
db2 catalog TCPIP node remnode remote database-1.123456789012.us-east-1.amazonaws.com server 50000
-
Catalogue o banco de dados
rdsadmin
e seu banco de dados. Isso permitirá que você se conecte ao banco de dadosrdsadmin
para realizar algumas tarefas administrativas usando procedimentos armazenados do Amazon RDS. Para ter mais informações, consulte Administrar a instância de banco de dados do RDS para Db2.No exemplo a seguir, substitua
database_alias
,node_name
edatabase_name
por aliases para esse banco de dados, o nome do nó definido na etapa anterior e o nome do banco de dados. Oserver_encrypt
criptografa o nome de usuário e a senha na rede.db2 catalog database rdsadmin [ as
database_alias
] at nodenode_name
authentication server_encrypt db2 catalog databasedatabase_name
[ asdatabase_alias
] at nodenode_name
authentication server_encryptExemplo
db2 catalog database rdsadmin at node remnode authentication server_encrypt db2 catalog database testdb as rdsdb2 at node remnode authentication server_encrypt
-
Conecte-se ao banco de dados do RDS para Db2. No exemplo a seguir, substitua
rds_database_alias
,master_username
emaster_password
pelo nome do banco de dados, o nome de usuário principal e a senha mestra da instância de banco de dados do RDS para Db2.db2 connect to
rds_database_alias
usermaster_username
usingmaster_password
O comando vai produzir uma saída semelhante ao seguinte exemplo:
Database Connection Information Database server = DB2/LINUXX8664 11.5.9.0 SQL authorization ID = ADMIN Local database alias = TESTDB
-
Execute consultas e visualize os resultados. O exemplo a seguir mostra uma declaração SQL que seleciona o banco de dados que você criou.
db2 "select current server from sysibm.dual"
O comando vai produzir uma saída semelhante ao seguinte exemplo:
1 ------------------ TESTDB 1 record(s) selected.
Solução de problema de conexão com a instância de banco de dados do RDS para Db2
O erro NULLID
a seguir geralmente indica que as versões do cliente e do servidor do RDS para Db2 não coincidem. Para ver as versões compatíveis do cliente do Db2, consulte Supported combinations of clients, drivers and server levels
db2 "select * from syscat.tables"
SQL0805N Package "NULLID.SQLC2O29 0X4141414141454A69" was not found.
SQLSTATE=51002
Depois de receber esse erro, você deverá vincular pacotes do cliente do Db2 antigo a uma versão do servidor do Db2 compatível com o RDS para Db2.
Como vincular pacotes de um cliente do Db2 mais antigo a um servidor do Db2 mais recente
-
Localize os arquivos de vinculação na máquina cliente. Normalmente, esses arquivos estão localizados no diretório bnd do caminho de instalação do cliente do Db2 e têm a extensão .bnd.
-
Conecte-se ao servidor do Db2. No exemplo a seguir, substitua
database_name
pelo nome do servidor do Db2. Substituamaster_username
emaster_password
por suas informações. Esse usuário tem autoridadeDBADM
.db2 connect to
database_name
usermaster_username
usingmaster_password
-
Execute o comando
bind
para vincular os pacotes.-
Navegue até o diretório onde estão os arquivos de vinculação na máquina cliente.
-
Execute o comando
bind
para cada arquivo.São necessárias as seguintes opções:
-
blocking all
: vincula todos os pacotes no arquivo de associação em uma única solicitação de banco de dados. -
grant public
: concede permissão apublic
para executar o pacote. -
sqlerror continue
: especifica que o processobind
continue mesmo se ocorrerem erros.
Para ter mais informações sobre o comando
bind
, consulte BIND commandna documentação do IBM Db2. -
-
-
Verifique se a associação foi bem-sucedida consultando a visualização do catálogo
syscat.package
ou verificando a mensagem exibida após o comandobind
.
Para ter mais informações, consulte DB2 v11.5 Bind File and Package Name List