Existem duas formas de acessar o banco através de um programa cliente. Para ambos os casos, você precisa instalar o programa oc.
Primeiro devemos descobrir o nome do pod (container) do banco, através do portal web ou com o comando oc.
No portal: Posicione o mouse sobre o ícone de container nas seção principal da aplicação:
No terminal: liste os container utilizando o comando oc:
$ oc get pods
NAME READY STATUS RESTARTS AGE
mysql-1-i9tl5 1/1 Running 0 27m <---- este é o pod do mysql
wp-2-k0g8h 1/1 Running 0 19m
Descobrimos que o nome do pod é mysql-1-i9tl5.
A - Acessar o container do Banco de Dados
Execute em um terminal:
$ oc rsh mysql-1-i9tl5
Substitua o nome do pod pelo nome que apareceu para você.
Pronto, agora você stá dentro do container do banco. Utilize os comandos específicos para cada banco de dados (mysql, psql, mongo...)
B - Criando um tunel até o Banco de Dados
então basta usarmos o comando oc port-forward:
$ oc port-forward mysql-1-i9tl5 3306
I0628 18:21:14.384056 23111 portforward.go:213] Forwarding from 127.0.0.1:3306 -> 3306
I0628 18:21:14.384438 23111 portforward.go:213] Forwarding from [::1]:3306 -> 3306
No exemplo acima estamos fazendo um redirect da porta 3306 do nosso container para a porta 3306 do nosso localhost.
Obs: a conexão vai ficar aberta enquanto o comando persistir, isso significa que se você pressionar CTRL + C você vai fechar o port-forward.
Conectando ao Banco de Dados
Para conectar no banco, abra um novo terminal ou seu cliente mysql preferido e entre com os dados que você pegou na tela de Ambiente no portal, apenas para usuário e senha. Voce também pode usar o comando oc para listar as variáveis de ambiente da aplicação:
$ oc env dc/mysql --list
# deploymentconfigs mysql, container mysql
MYSQL_USER=userhWF
MYSQL_PASSWORD=oQ4Ohb1GAoQKjm
MYSQL_DATABASE=sampledb
Ex:
Podemos até gerar um backup automatico simplesmente declarando as variaveis no shell local:
$ oc env dc/mysql --list | eval
$ mysqldump -h localhost -P 3306 -u ${MYSQL_USER} "-p${MYSQL_PASSWORD}" ${MYSQL_DATABASE} > ${MYSQL_DATABASE}.sql
Com isso finalizamos nosso artigo, qualquer duvida deixe nos comentários para que possamos ajuda-lo.
Comentários
0 comentário
Por favor, entre para comentar.