Solucionar errores de conexión en el complemento MySQL

Solucionar errores de conexión en el complemento MySQL

Durante la configuración del complemento MySQL, es posible que se produzcan los siguientes errores:
AlertaError : Connection Error: este error suele indicar que hay un problema para establecer una conexión con la base de datos.
A veces, este mensaje se complementa con un mensaje de acceso denegado, como se muestra a continuación.
Alerta
Error: Connection Error: (1045, "Access denied for user 'root'@'localhost' (using password: NO)"): este error suele indicar que el servidor MySQL está rechazando el intento de inicio de sesión del usuario raíz desde el host local. Esto se puede producir debido a las siguientes razones: 
  1. Se requiere una contraseña, pero no se ha proporcionado (como indica "using password: NO").
  2. El usuario no tiene acceso desde el host local.

A continuación, se indican algunos pasos que puedes seguir para resolver los errores:

1. Asegúrate de que el servidor de MySQL esté en ejecución.

Comprueba que el servidor de MySQL esté en ejecución. En Linux, puedes usar el siguiente comando:
sudo systemctl start mysql

2. Soluciona el error Access denied for user 'root'@'localhost'.

Crea un usuario MySQL y concédele permiso para realizar consultas SELECT ON.
Notas
Nota: Es recomendable no utilizar el usuario raíz para monitorear MySQL. En su lugar, crea y usa usuarios dedicados que solo tengan los privilegios necesarios. 
  1. Para crear un usuario de MySQL, usa el comando que se muestra a continuación:
    CREATE USER username@hostname IDENTIFIED BY 'password';

  2. Concédele el permiso SELECT ON al usuario con el siguiente comando:
    GRANT SELECT ON mysql.* TO username@hostname IDENTIFIED BY 'password';

    Por ejemplo, crea un usuario con el nombre 'site24x7' y 'site24x7' como la contraseña. Otorga el permiso SELECT ON, así como los privilegios SUPER o REPLICATION CLIENT al usuario 'site24x7' y elimina los privilegios como se muestra a continuación:

    CREATE USER site24x7@localhost IDENTIFIED BY 'site24x7';
    GRANT SELECT ON mysql.* TO site24x7@localhost IDENTIFIED BY 'site24x7';
    use mysql;
    UPDATE mysql.user SET Super_Priv='Y' WHERE user='site24x7' AND host='localhost'; (or)
    UPDATE mysql.user SET Repl_client_priv='Y' WHERE user='site24x7' AND host='localhost';
    FLUSH PRIVILEGES;

    Para MariaDB, usa el siguiente comando:
    CREATE USER site24x7@localhost IDENTIFIED BY 'site24x7';
    GRANT SUPER ON *.* TO 'site24x7'@'localhost';
    GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'site24x7'@'localhost';
    FLUSH PRIVILEGES;
3. Asegura el acceso del usuario 'username'@'localhost' con la contraseña: YES/NO.
  1. Asegúrate de que el nombre de usuario y la contraseña sean correctos.
  2. Restablece la contraseña si es necesario.
  3. Asegúrate de que el usuario tenga los permisos adecuados para conectarse desde el host indicado.
Notas
Nota: Si encuentras la palabra 'cryptography' mencionada en el error, comprueba que tienes instalado el módulo Python de criptografía en tu servidor.
Para instalar el módulo de criptografía, ejecuta el siguiente comando: pip3 install cryptography

Documentación relacionada: