Me encontré con un problema extraño, implementé un sitio de django en un servidor Ubuntu 20.04 LTS. El problema es que mi aplicación django no puede conectarse a la base de datos porque no utiliza las credenciales de conexión de db que se identificaron en la configuración de la aplicación.py. Está usando root sin contraseña. Pero cuando puedo ejecutar operaciones de db de manage.py sin ningún problema.
Esta es mi configuración.py
'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'pplus_db', 'USER': 'pplus_user', 'PASSWORD': 'dfa@4GL-5qQU', 'HOST': 'localhost', 'PORT':'3306', } }El error:
OperationalError at /accounts/login/ (1045, "Access denied for user 'root'@'localhost' (using password: NO)") Request Method: POST Request URL: http://IP_ADDRESS/accounts/login/ Django Version: 3.2.5 Exception Type: OperationalError Exception Value: (1045, "Access denied for user 'root'@'localhost' (using password: NO)")He logrado solucionar el problema, creo que el tema estaba en el cobro. Después de seguir esta solución django.db.utils.OperationalError: (1045:Acceso denegado para el usuario 'root'@'localhost' (con contraseña: NO)
Asegúrate de reiniciar tus servicios:
sudo systemctl daemon-recargar
sudo systemctl reiniciar gunicorn
O si puede reiniciar el servidor.
solo necesita ejecutar sudo mysqld_safe --skip-grant-tables
o restablezca su contraseña de MySQL a nulo