Saltar al contenido

Error en la conexión de Sequel Pro y MySQL

Solución:

Esto se debe a que Sequel Pro aún no está listo para un nuevo tipo de inicio de sesión de usuario, ya que el error indica: no hay controlador.

mysql + homebrew

Básicamente, tendrá que realizar algunas acciones manualmente, sin embargo, los datos de su base de datos no se eliminarán como en la solución a continuación

  • Vaya al archivo my.cnf y en la sección [mysqld] añadir línea:

    default-authentication-plugin=mysql_native_password

  • Inicie sesión en el servidor mysql desde la terminal: ejecutar mysql -u root -p, luego dentro del shell ejecute este comando (reemplazando [password] con su contraseña real):

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[password]';

  • salir del shell mysql con exit y correr brew services restart mysql.

Deberia trabajar.

Solución rápida (método destructivo)

Solución rápida para instalaciones que no sean caseras:

Apple Logo > System Preferences > MySQL > Initialize Database, luego escriba su nueva contraseña y seleccione ‘Usar contraseña heredada’

Después de reiniciar, debería poder conectarse. Hágalo solo en instalaciones nuevas, porque de lo contrario puede perder sus tablas de base de datos.


my.cnf

El archivo my.cnf se encuentra en /etc/my.cnf en Unix / Linux


Alternativas

Para aquellos que todavía están luchando con problemas de Sequel Pro: Sequel Pro fue un gran producto, pero con toneladas de problemas sin resolver y la última versión fechada en 2016, tal vez sea una buena idea buscar algunas alternativas. Hay una bifurcación de SequelPro llamada SequelAce que parece ser bastante estable y actualizada, mantiene una funcionalidad similar, un aspecto y una sensación similares, pero al mismo tiempo carece de problemas antiguos de Sequel Pro.

TL; DR: Sequel Pro está muerto desde 2016. No degrades tu base de datos debido a una herramienta. Pase a una herramienta alternativa.

Actualización 2020: ¡Sequel Pro está oficialmente muerta pero extraoficialmente viva! Puedes encontrar el “nocturno“compilaciones que no tienen este problema (es decir, admiten la autenticación de Mysql 8) aquí: https://sequelpro.com/test-builds


Todas las otras soluciones aquí recomiendan cambiar la configuración de su base de datos (haciéndola menos segura, como lo anuncia MySQL) para la herramienta que está utilizando. Eso no es aceptable para mí.

Siempre he sido un gran admirador de Sequel Pro, incluso he donado. Pero, con toda mi pasión y amor, lo siento si la herramienta no tiene ningún lanzamiento desde 2016. ¡YOLO, y tengo que seguir adelante!

La alternativa que encontré (de https://stackoverflow.com/a/55235533/2321594, gracias a @arcseldon) es DBeaver, que admite el nuevo método de autenticación (no heredado) de MySQL 8.

PD. El único truco en el lado de la herramienta, no en el lado DB es cuando está creando una conexión MySQL 8, es posible que deba ir a “Propiedades del controlador” (más adelante se puede encontrar en Editar conexión) y cambiar el valor de allowPublicKeyRetrieval para true.

Necesitaba esto para conectarme a mi contenedor MySQL creado con Docker. Para que la IP de MySQL sea visible desde el exterior, para cualquier otra aplicación en su ecosistema (no solo esta herramienta), debe crear un nuevo usuario en MySQL o pasar -e MYSQL_ROOT_HOST=% en tiempo de ejecución o como ENV.

  1. Asumiendo que no tienes un mysql configuración, repita lo siguiente para ~/.my.conf
[mysqld]
default-authentication-plugin=mysql_native_password
  1. Registrarse en mysql con mysql -u root -p
  2. Establezca la contraseña del usuario root con ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[PASSWORD]'; dónde [PASSWORD] es una contraseña de su elección.
  3. Reiniciar mysql con, por ejemplo brew services restart mysql
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *