2
respostas

Erro de conexão com banco

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Não consigo rodar o projeto. Comando go run main.go retorna erro de conexão com o banco

[error] failed to initialize database, got error failed to connect to host=localhost user=root database=root: server error (FATAL: role "root" does not exist (SQLSTATE 28000)) 2024/01/26 07:54:39 Erro ao conectar com banco de dados panic: Erro ao conectar com banco de dados

2 respostas

Brunno, boa tarde! Eu encontrei alguns problemas para subir também, mas resolvi da seguinte forma:

Veja que eu alterei nas Ports para o 5433:5432 no arquivo docker-compose.yml

version: '3'
services:
  postgres:
    image: "postgres"
    environment:
      - POSTGRES_USER=root
      - POSTGRES_PASSWORD=root
      - POSTGRES_DB=root      
    ports:
      - "5433:5432"
    volumes:
      - /postgres-data:/var/lib/postgresql/data  

  pgadmin-compose:
    image: dpage/pgadmin4
    environment:
      PGADMIN_DEFAULT_EMAIL: "gui@alura.com"
      PGADMIN_DEFAULT_PASSWORD: "123456"
    ports:
      - "54321:80"
    depends_on:
      - postgres

No arquivo db.go somente alterei a porta também e funcionou:

package database

import (
    "log"

    "github.com/guilhermeonrails/api-go-gin/models"
    "gorm.io/driver/postgres"
    "gorm.io/gorm"
)

var (
    DB  *gorm.DB
    err error
)

func ConectaComBancoDeDados() {
    stringDeConexao := "host=localhost user=root password=root dbname=root port=5433 sslmode=disable"
    DB, err = gorm.Open(postgres.Open(stringDeConexao))
    if err != nil {
        log.Panic("Erro ao conectar com banco de dados")
    }

    DB.AutoMigrate(&models.Aluno{})
}

Para garantir as alterações no Docker, rodei o comando docker-compose up -d

Talvez sejam erros diferentes, mas pode ser que ajude.

Bom dia Gustavo. Alterei as portas no projeto e deu super certo também. Só queria muito entender porque pela porta 5432 não funcionou a conexão . Obrigado pela ajuda