2
respostas

desenvolvendo uma API Rest Go: desenvolvendo uma API Rest

Olá prezados,

Durante o curso "Desenvolvendo uma API Rest com Go," o professor, após configurar o banco de dados e o Docker, apresentou o uso do GORM aos alunos. No entanto, ao seguir os passos apresentados no vídeo, surge um problema. Ao tentar subir o servidor Go, não são detectados erros. No entanto, ao reproduzir exatamente o mesmo processo, uma mensagem de erro é exibida:

[error] Falha ao inicializar o banco de dados, erro ao conectar-se a `host=localhost user=root database=root`: autenticação SASL falhou 
(FATAL: falha na autenticação do tipo senha para o usuário "root" (SQLSTATE 28P01))
2023/12/02 02:17:31 Erro ao conectar-se ao banco de dados
panic: Erro ao conectar-se ao banco de dados

goroutine 1 [executando]:
log.Panic({0xc0000b9ed8?, 0xc00008ea88?, 0x0?})
        C:/Program Files/Go/src/log/log.go:432 +0x5a
api_go/database.ConectaComBancoDeDados()

É importante mencionar que já recriei o projeto e tentei copiar e colar o código do professor, mas o mesmo erro persiste. Pesquisando na comunidade da Alura, encontrei um usuário com um problema semelhante. No entanto, ao tentar aplicar as soluções fornecidas, não obtive sucesso.

Agradeço antecipadamente por qualquer ajuda ou orientação que possam oferecer.

2 respostas

Olá estudante,

O erro que você está enfrentando ao tentar subir o servidor Go e conectar-se ao banco de dados parece estar relacionado a um problema de autenticação. A mensagem de erro indica que a autenticação SASL falhou e que houve uma falha na autenticação do tipo senha para o usuário "root".

Existem algumas possíveis soluções para esse problema. Vou listar algumas delas:

  1. Verifique se as informações de autenticação do banco de dados estão corretas. Certifique-se de que o nome de usuário, senha e banco de dados estão configurados corretamente no seu código.

  2. Verifique se o banco de dados está configurado corretamente. Certifique-se de que o banco de dados está em execução e acessível a partir do seu servidor Go. Você pode tentar se conectar ao banco de dados usando outras ferramentas, como o cliente do banco de dados, para verificar se a conexão está funcionando corretamente.

  3. Verifique se o usuário "root" tem permissões adequadas para acessar o banco de dados. Você pode precisar conceder permissões adicionais ao usuário "root" para que ele possa se conectar ao banco de dados.

  4. Verifique se o driver do banco de dados está instalado corretamente. Certifique-se de que você instalou o driver correto para o banco de dados que está usando e que ele está configurado corretamente no seu código.

Além disso, sugiro que você verifique se há algum erro de digitação ou configuração incorreta no seu código. Verifique se você está usando os nomes corretos para os campos de autenticação e se não há nenhum caractere especial ou espaço em branco extra.

Qualquer dúvida manda aqui de novo.

Espero ter ajudado e bons estudos!

Olá

Eu fiz algumas mudanças no projeto como a conexão direta do DB sem usar o docker e consegui terminar fazer a API Rest como no curso.