1
resposta

[Bug] como resolver esse erro na hora de criar o bd?

ola, estou com um ploblema na hora de criar o banco de dados usando o script da aula. sempre da esse erro Conectando... 2003: Can't connect to MySQL server on 'localhost:3306' (10061 Nenhuma conexão pôde ser feita porque a máquina de destino as recusou ativamente) Traceback (most recent call last): File "C:\Users\Administrator\PycharmProjects\jogoteca2\prepara_banco.py", line 21, in cursor = conn.cursor() ^^^^ NameError: name 'conn' is not defined

Process finished with exit code 1

1 resposta

Oi Guilherme, tudo bem? 😊

Pelo erro que você compartilhou, parece que o problema está na conexão com o MySQL. 🤔

O erro "Can't connect to MySQL server on 'localhost:3306'" indica que o Python não conseguiu encontrar o servidor MySQL rodando no seu computador.

Primeiro, verifique se o serviço do MySQL está ativo. Você pode verificar isso nos serviços do seu sistema operacional.

Outro ponto importante é confirmar se as credenciais de acesso ao banco de dados estão corretas no seu script prepara_banco.py. Confira o host, usuário, senha e porta.

O erro NameError: name 'conn' is not defined acontece porque a variável conn não foi criada corretamente. Isso geralmente ocorre quando a conexão com o banco de dados falha antes de atribuir um valor a conn.

Para resolver isso, você pode adicionar um tratamento de erro na sua conexão. Use um bloco try...except para capturar possíveis falhas na conexão.

Exemplo:

import mysql.connector

try:
    conn = mysql.connector.connect(host='localhost', user='seu_usuario', password='sua_senha', database='jogoteca')
    cursor = conn.cursor()
    # Resto do seu código aqui
except mysql.connector.Error as err:
    print(f"Erro ao conectar com o MySQL: {err}")
    exit() # Encerra o script em caso de falha na conexão

Substitua 'seu_usuario' e 'sua_senha' pelas suas credenciais do MySQL.

Verifique também se a porta 3306 está liberada no seu firewall, caso esteja usando algum.

🎓 Para saber mais:

Espero ter ajudado a solucionar o problema! 🧐 Continue praticando e explorando o mundo do desenvolvimento web! 💪