Conector PowerBI MongoDB BI – autenticación MySQL

Un usuario Pregunto ✅

gnumarco

¡Hola a todos!

Entonces, como se indica en el título: quiero conectar PowerBI a mi MongoDB usando BI Connector.

El BI Connector (instalado en el lado del servidor) básicamente proporciona una forma de conectarse a MongoDB como si fuera un servidor MySQL (en el puerto 3307) PERO para autenticarse, uno tiene que usar un complemento de autenticación especial (mongosql_auth) que tiene que estar instalado del lado del cliente.

El punto es: funciona perfectamente en la línea de comando:

mysql 'user=root?source=admin' --default-auth=mongosql_auth -p -h localhost --port 3307

Esto se conecta sin ningún problema, y ​​luego puedo ver mis tablas, etc.

Pero, cuando uso el conector MySQL en PowerBI, no hay forma de especificar que tiene que usar el complemento mongosql_auth. Vuelve:

Detalles: «MySQL: la autenticación en el host ‘xxx.xxx.xxx.xxx’ para el usuario ‘raíz’ usando el método ‘mysql_native_password’ falló con el mensaje: Falló la lectura de la secuencia».

Por cierto, tampoco pude encontrar una forma de hacerlo usando MySQL Workbench 😉

¿Alguien tiene una idea de esto?

¡¡Gracias!!

gnumarco

En respuesta a gnumarco

He encontrado una solución: conectarme a través de ODBC.

La instalación del controlador ODBC de MySQL y la creación de un DSN de ODBC con el conector ANSI soluciona el problema, ya que la interfaz le permite especificar el complemento de autenticación que se utilizará.

Probado con éxito: puedo recuperar datos de MongoDB a PowerBI usando el conector BI y el complemento mongosql_auth.

laciodrom_80

@gnumarco

Hola,

Tengo algunos problemas para conectarme mediante mysql: creé con éxito schema.drdl y establecí una conexión mongosqld en el puerto 3307:

OpenSSL version: OpenSSL 1.0.1u  22 Sep 2016
waiting for connections at 127.0.0.1:3307

Pero cuando intento conectarme por cliente mysql

mysql 'user=myUser?source=myDb' --default-auth=mongosql_auth -p -h localhost --port 3307

Tengo este error: ERROR 1043 (08S01): error al realizar la autenticación: no se pudo iniciar la conversación saslStart 0: (AuthenticationFailed) La autenticación falló.

Estoy usando la edición comunitaria de MySQL, ¿y tú? ¿Debo usar el empresarial y realizar una conexión desde mysql con autenticación y TLS/SSL? (https://docs.mongodb.com/bi-conector/actual/conectar/mysql/)

¡Gracias por adelantado!

gnumarco

En respuesta a laciodrom_80

Hola.

Me las arreglé para hacerlo con la edición de la comunidad.

¿Está seguro de que su usuario está definido en la base de datos «myDb» y no en la base de datos «admin»?

d1g1talw00d

Hola gnumarco, yo también he estado luchando con esto por un tiempo.

Una solución consiste en usar el controlador ODBC de MySQL y configurar un DSN en el cliente, configurando SSL con el certificado del cliente, la clave y el certificado de CA (obtenido mediante el uso de openssl en el host Mongodb, https://dev.mysql.com/doc/refman /5.7/en/creating-ssl-files-using-openssl.html). Luego puede usar dsn=foo para configurar una fuente de datos ODBC en PBI, en lugar de una de MySQL.

Sin embargo, esto es a) una molestia para administrar los certificados en cada escritorio del cliente y, lo que es peor, b) parece haber un error en el que, después de enumerar y escanear con éxito las colecciones de MongoDB en PowerBI, el asistente Obtener datos a menudo parece bloquearse. Al verificar los registros en el lado de MongoDB, parece que se agotó el tiempo de espera durante un protocolo de enlace SSL. Por cierto, MySQL Workbench puede conectarse y consultar MongoDB sin problemas, como su escenario de línea de comandos.

Estoy presentando un ticket con MongoDB Support hoy y le informaré si hay una solución en el lado del conector BI. Es posible que el problema de SSL se supere usando mongosql_auth con el controlador ODBC de MySQL, las notas de la versión dicen que es compatible, ese será mi siguiente paso.

Sería mucho mejor que Microsoft agregara soporte SSL para el conector MySQL nativo en PowerBI. Ya hay una solicitud de función, pero actualmente solo tiene 27 votos. https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/13440003-ssl-certificate-on-mysql….

Mi solución temporal actual es usar el controlador Simba ODBC de Magnitude para MongoDB (Progress también tiene uno), pero sus precios acaban de aumentar y la implementación general del controlador por parte del usuario no es financieramente factible.

Espero que ayude, es realmente frustrante tener MongoDB y PowerBI tan cerca pero no del todo conectados. Responderé si obtengo alguna resolución del soporte de MongoDB.

gnumarco

En respuesta a d1g1talw00d

He buscado un poco más sobre esto. Parece ser un problema más amplio: muchos softwares que pueden conectarse a una base de datos MySQL no ofrecen la posibilidad de elegir qué complemento de autenticación usar, aunque el complemento se instala además de la biblioteca del cliente MySQL.

Este es un problema que tiene PowerBI y, excepto si Microsoft soluciona esto, realmente no veo una solución, y realmente NECESITO que esto funcione en mi empresa (Microsoft, si está escuchando…).

De todos modos, cualquier ayuda es bienvenida. 😉

gnumarco

En respuesta a gnumarco

He encontrado una solución: conectarme a través de ODBC.

La instalación del controlador ODBC de MySQL y la creación de un DSN de ODBC con el conector ANSI soluciona el problema, ya que la interfaz le permite especificar el complemento de autenticación que se utilizará.

Probado con éxito: puedo recuperar datos de MongoDB a PowerBI usando el conector BI y el complemento mongosql_auth.

gokul

En respuesta a gnumarco

Por favor, ¿pueden explicarlo claramente? Estoy impresionado con la obtención de datos de mongo db, puedo obtener los datos del controlador simba pero no puedo obtener los datos del conector power bi… muestra el error como «controlador mongo[odbc]:no puedo conectarme al servidor sql»

Deja un comentario

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