Skip to content

Instantly share code, notes, and snippets.

@marcosbarker
Created July 30, 2021 02:13
Show Gist options
  • Save marcosbarker/7ddd273e9636ada9c20f4089f222a206 to your computer and use it in GitHub Desktop.
Save marcosbarker/7ddd273e9636ada9c20f4089f222a206 to your computer and use it in GitHub Desktop.
HEROKU CREATE DATABASE: Manual com passo a passo de como criar banco de dados no servidor, sincronizar localmente, criar tabelas, popular com o DBeaver (🐘PostgreSQL) e como usar com Spring Boot.

Documentação Heroku Postgres

1ª Entrar no Heroku

1.1 Caso ainda não tenha uma conta, faça uma: Heroku.

1.2 Após a tela de login, vocẽ verá a tela 'Personal', onde são listados seus projetos.

telaPersonal


2ª Criando um novo app

🧐Obs: O app pode ser um banco, um site feito for tecnologias diversas, uma API...
🧐Obs: Sendo um banco de dados ou API, você tem a opção de relacionar os dois em um mesmo Deploy.

2.1 No canto superior direito clique em 'New >> Create new app'

2.2 Na tela seguinte, preencha o 'App name'. Esse nome será parte da URL da sua API ou Site, esse nome não tem relação com o nome do seu repositório caso exista. Se for usar o 'app' apenas para o banco sem relacionar com um repositório, esse nome será apenas para sua referência interna.

🧐Obs: O nome do app não pode conter números, letras maiúsculas e espaços. Para separar palavras use hífen.

create


3ª Criando o Banco de Dados

3.1 Na tela seguinte terá um menu superior com ( Overview - Resources - Deploy...) clique em 'Resources'.

3.2 Em 'Resources', no campo Add-ons', pesquise por:

Heroku Postgres

3.3 Clique na opção 'Heroku Postgres', abrirá um modal, confirme que o 'Plan name' é o 'Hobby Dev - Free'. Clique em 'Submit Order Form'.

herokuPost

  • Data criado. Mas calma, ainda temos que conectar localmente para poder criar as tabelas e popular.


4ª Datastores

4.1 Existem alguns caminhos para chegar até as configuração do banco de dados:

4.1.2 Em 'Resources', 'Add-ons' seu 'DATABASE' estará listado.
4.1.3 No menu superior direito ao lado do avatar, clique em 'DATA'. Esta opção traz todos os seus bancos ativos no Heroku.

4 3DataBase


5ª 🔑Credenciais

5.1 Em 'Datastores' terá um menu superior com ( Overview - Durability - Settings...). Clique em 'Settings'.

5.2 Na pagina seguinte em 'Administration' na opção 'Database Credentials' clique em 'View Credentials...'

settings

5.3 A tela seguinte trará todas as informações necessárias para você conectar o banco locamente.

credencias


6ª Conectando o DBeaver com o Banco de Dados do Servidor

6.1 Crie normalmente um novo banco de dados 🐘Postgres.

6.1.2 No menu superior do DBeaver vá em 'Database >> New Database Connection >> PostgreSQL' clique em Next>.

criateBd

6.2 Colocando as credencias geradas pelo Heroku. Copie os dados para os campos equivalentes.

6.2.2 Não se esqueça de verificar a conexão ao fim do preenchimento.

credenBd


7ª Criando Tabelas e Populando o Banco de Dados do Servidor

7.1 O acesso local pelo DBeaver é a interface do banco no servidor, tudo que você fizer locamente será atualizado no banco remoto.

7.2 Criando uma nova tabela, uma coluna... essas edições ao serem salvas, são persistidas no servidor e, todos conecados a ele serão atualizados.

creatTable

7.3 Fazendo alterções locais e um 'Refresh', em poucos seguntos, o servidor será atualizado e, conseguentimente todos os terminais conectados.

tableHeroku


8ª Como usar o Banco de Dados no Spring Boot

8.1 No arquivo 'application.properties', no lugar de configurações para rodar com banco local, você usara as mesmas credenciais usadas para conectar o DBeaver.

spring.datasource.url				    	= jdbc:postgresql://ec4-48-6-217-68.compute-1.amazonaws.com:5432/l4oyeo8jphr
spring.datasource.username				= jjtmqmhnwmiysh
spring.datasource.password				= 00e9e757e862t83f57708fe775a6afppf8b532604bh6042a4f2me303096b005ow
spring.jpa.show-sql               =true
spring.jpa.hibernate.ddl-auto     = none
spring.jackson.deserialization.fail-on-unknown-properties = true

credSpring

8.2 🔒As credencias são dados sensiveis, qualquer pessoas com esses dados poderão se conectar ao banco de dados e ter acesso a todas informações. Antes de subir o projeto para o repositório, não se esqueça de incluir o arquivo 'application.properties' no '.gitignore' caso o projeto não utilize repositório privado.

!.src/main/resources/application.properties

  • Pronto, agora você pode se conectar ao banco de dados de qualquer lugar e, em um trabalho de grupo, todos poderam se conectar ao servidor.



                         ⬆️Back to top⬆️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment