Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Problemas con DBD:mysql
Ir a página 1, 2  Siguiente
 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Módulos
Mensaje Lun Mar 24, 2008 6:37 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Problemas con DBD:mysql Responder citando

Hola,
estoy intentando conectarme a una BD Mysql con un script Perl, pero me estoy obteniendo el siguiente error:

Código:
install_driver(mysql) failed: Can't locate loadable object for module DBD::mysql in @INC (@INC contains: D:/usr/site/lib D:/usr/lib .) at (eval 5) line 3
Compilation failed in require at (eval 5) line 3.
Perhaps a module that DBD::mysql requires hasn't been fully installed


Supongo que no tengo el módulo DBD:mysql correctamente instalado. Lo he intentado pero soy incapaz de instalarlo. Me he descargado la última versión del módulo en CPAN (DBD-mysql-4.006) pero tanto al hacer el perl makefile.pl (no sé si tengo que ejecutar esto para instalarlo) obtengo un error (me da un error con las librerías) o al intentar instalarlo desde ppm (ppm install dbd-mysql) también me da error.
Llevo ya varios días con ello y no consigo dar con la solución.
A ver si alguien puede ayudarme.

Muchas gracias y un saludo.
Ignacio
Mensaje Lun Mar 24, 2008 7:34 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

Bienvenido a los foros de Perl en Español.

Si tienes la distribución de Perl de ActiveState, siempre deberías usar el gestor PPM.

¿Qué error te da al usar PPM?

Ultima edición por explorer el Lun Mar 24, 2008 7:42 am, editado 1 vez
Mensaje Lun Mar 24, 2008 7:36 am
kidd
Creador de Perl en Español
Creador de Perl en Español
Registrado: 15 Oct 2003
Mensajes: 1361
Ubicación: México
Responder citando

Hola Ignacio:

Lo extraño es que el módulo DBD::MySQL viene por defecto cuando instalas el ActivePerl.

Intenta ejecutar los siguiente comandos con el ppm:

Código:
ppm uninstall DBD-mysql

ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd


Si tienes la última versión del ActivePerl entonces en vez del ppm deberás de ejecutar el ppm-shell.


Saludos
Mensaje Lun Mar 24, 2008 8:26 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Responder citando

explorer escribió:
Bienvenido a los foros de Perl en Español.

Si tienes la distribución de Perl de ActiveState, siempre deberías usar el gestor PPM.

¿Qué error te da al usar PPM?



Hola,

el error que obtengo es:

ppm install failed: Can't find any package that provides DBD-mysql.
De todas formas, algo he tenido que hacer (he porbado de todo) porque antes me salía un mensaje de que estaba intentando descargar los paquetes y al cabo de un rato me aparece el mensaje de que no encuentra nada (ahora me aparece casi de inmediato).

Gracias.
Mensaje Lun Mar 24, 2008 8:30 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Responder citando

kidd escribió:
Hola Ignacio:

Lo extraño es que el módulo DBD::MySQL viene por defecto cuando instalas el ActivePerl.

Intenta ejecutar los siguiente comandos con el ppm:

Código:
ppm uninstall DBD-mysql

ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd


Si tienes la última versión del ActivePerl entonces en vez del ppm deberás de ejecutar el ppm-shell.


Saludos



Hola,
al ejecutar el comando uninstall me dice que ese paquete no está instalado y al ejecutar el comando ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd me da el error: ppm install failed: The PPD does not provide code to install for this platform.

La versión del active que tengo instalada es la 5.10.0.

un saludo.
Mensaje Lun Mar 24, 2008 9:52 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

Instálate la distribución Perl 5.8.
Mensaje Lun Mar 24, 2008 9:56 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Responder citando

explorer escribió:
Instálate la distribución Perl 5.8.


Es la que tenía instalada y la he cambiado esta mañana por la más actual. El error es el mismo. De todas formas, me la he vuelto a instalar. ¿Alguna otra sugerencia?

Muchas gracias.
Mensaje Lun Mar 24, 2008 10:17 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

Según la página de ActiveState, DBD-mysql solo está compilado para la versión 5.8.8, así que por ese motivo te lo he dicho.

Acabo de bajarme la versión 5.8.8.822 y puedo decirte que no está instalado de base. He arrancado el gestor gráfico PPM, buscado el DBD-mysql. Elegir la versión 3.002 e instalado sin problemas:

Código:
C:\Documents and Settings\Administrador>perl -MDBD::mysql -e 1

C:\Documents and Settings\Administrador>

Vamos, he usado una docena de clicks de ratón... Wink
Mensaje Lun Mar 24, 2008 10:28 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Responder citando

explorer escribió:
Según la página de ActiveState, DBD-mysql solo está compilado para la versión 5.8.8, así que por ese motivo te lo he dicho.

Acabo de bajarme la versión 5.8.8.822 y puedo decirte que no está instalado de base. He arrancado el gestor gráfico PPM, buscado el DBD-mysql. Elegir la versión 3.002 e instalado sin problemas:

Código:
C:\Documents and Settings\Administrador>perl -MDBD::mysql -e 1

C:\Documents and Settings\Administrador>

Vamos, he usado una docena de clicks de ratón... Wink



A ver que puedo estar haciendo mal. Arranco el ppm, está un momento sincronizando la base de datos. En los nombres de los paquetes instalados aparece el DBI, pero no el DBD. No veo en ningún sitio donde pueda descargarme el DBD-sql. Tengo una ventana donde puedo buscar los paquetes instalados, pero no veo donde puedo escribir uno y descargármelo.
Además, si lo hago desde la línea de comando me aparece:

C:\Perl>ppm install dbd-mysql
Downloading ActiveState Package Repository packlist...status 500
Downloading DBD_sql packlist...not modified
Downloading DBD-mysql packlist...status 500
ppm install failed: Can't find any package that provide dbd-mysql

¿Cómo lo puedo hacer?
¿Cómo lo has hecho?.
Mensaje Lun Mar 24, 2008 10:41 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

Por defecto, en el gestor gráfico PPM, está seleccionado ver solo los paquetes instalados. Pulsa el botón que está justo debajo de "File", y te mostrará los 7102 paquetes disponibles. Luego, en la caja de texto con la lupa, escribe mysql, y enseguida verás el paquete. Lo seleccionas y pulsas el botón arriba que tiene un símbolo '+'. Y finalmente, el botón de la flecha verde para que lo instalé.
Mensaje Lun Mar 24, 2008 10:46 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Responder citando

explorer escribió:
Por defecto, en el gestor gráfico PPM, está seleccionado ver solo los paquetes instalados. Pulsa el botón que está justo debajo de "File", y te mostrará los 7102 paquetes disponibles. Luego, en la caja de texto con la lupa, escribe mysql, y enseguida verás el paquete. Lo seleccionas y pulsas el botón arriba que tiene un símbolo '+'. Y finalmente, el botón de la flecha verde para que lo instalé.


Ya tenía pulsado el botón de ver todos los paquetes (sólo veo 42) y no veo el de mysql (aunque lo ponga en la caja de texto) por lo que no puedo seleccionarlo para instalarlo. Además, cuando está sincronizando la BBDD, en el panel de status aparece el mensaje: Synchronizing Database ... Downloading ActiveState Package Repository packlist ... status 500
Downloading DBD-mysql packlist ... status 500.

Así que supongo que está dando error al bajarse ese paquete. No sé porque puede pasar.

Gracias.
Mensaje Lun Mar 24, 2008 10:52 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

Humm... viendo el error que te sale, es un error 500... así que eso quiere decir que desde tu ordenador no tienes permiso para acceder al repositorio de paquetes de ActiveState.

Dentro de PPM, vete al menú Edit->Preferences->Repositories.
Yo allí tengo ahora mismo uno, el de activestate, que apunta a http://ppm4.activestate.com/MSWin32-x86/5.8/822/package.xml , con 7081 paquetes.

Voy a aprovechar para agregar alguno de los repositorios que están indicados en PPM Repositories. Me basta con el de trouchelle.com/ppm para tener 11507 paquetes más... (¡toma eso, Java!)

Ultima edición por explorer el Lun Mar 24, 2008 10:56 am, editado 2 veces
Mensaje Lun Mar 24, 2008 10:53 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

¿No estarás detrás de un proxy?
Mensaje Lun Mar 24, 2008 11:00 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3823
Ubicación: Valladolid, España
Responder citando

iperezmena escribió:
explorer escribió:
Por defecto, en el gestor gráfico PPM, está seleccionado ver solo los paquetes instalados. Pulsa el botón que está justo debajo de "File", y te mostrará los 7102 paquetes disponibles. Luego, en la caja de texto con la lupa, escribe mysql, y enseguida verás el paquete. Lo seleccionas y pulsas el botón arriba que tiene un símbolo '+'. Y finalmente, el botón de la flecha verde para que lo instalé.


Ya tenía pulsado el botón de ver todos los paquetes (sólo veo 42) y no veo el de mysql (aunque lo ponga en la caja de texto) por lo que no puedo seleccionarlo para instalarlo. Además, cuando está sincronizando la BBDD, en el panel de status aparece el mensaje: Synchronizing Database ... Downloading ActiveState Package Repository packlist ... status 500
Downloading DBD-mysql packlist ... status 500.

Así que supongo que está dando error al bajarse ese paquete. No sé porque puede pasar.

Gracias.
42 son los paquetes que tienes instalados, pero no los disponibles, que son más de 7000. Pulsa el botón correcto.

Y que en la ventana de estado, mientras está descargando la lista general, salga un error relativo al DBD-mysql, es muy posible que el PPM esté detectando una instalación a medias de esa distribución y la esté intentando bajar. Pero tienes el acceso denegado (error 500). Suena a proxy.
Mensaje Lun Mar 24, 2008 11:00 am
iperezmena
Perlero Nuevo
Perlero Nuevo
Registrado: 24 Mar 2008
Mensajes: 7
Responder citando

explorer escribió:
Humm... viendo el error que te sale, es un error 500... así que eso quiere decir que desde tu ordenador no tienes permiso para acceder al repositorio de paquetes de ActiveState.

Dentro de PPM, vete al menú Edit->Preferences->Repositories.
Yo allí tengo ahora mismo uno, el de activestate, que apunta a http://ppm4.activestate.com/MSWin32-x86/5.8/822/package.xml , con 7081 paquetes.

Voy a aprovechar para agregar alguno de los repositorios que están indicados en PPM Repositories. Me basta con el de trouchelle.com/ppm para tener 11507 paquetes más... (¡toma eso, Java!)



Esa ruta ya la tenía añadida. Como ahora estoy en la oficina y salgo por un proxy, voy a intentar desde mi casa a ver si puedo descargármelo desde allí. Espero que sea por eso, porque sino... Bueno, mañana te digo.

Muchas gracias por tu ayuda.

Saludos.
Publicar nuevo tema   Responder al tema    Foros de discusión -> Módulos Todas las horas son GMT - 6 Horas
Ir a página 1, 2  Siguiente
Página 1 de 2



Powered by phpBB © 2001, 2005 phpBB Group