• Publicidad

Conectanto Perl con MySQL

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Conectanto Perl con MySQL

Notapor desdechina » 2013-06-10 08:19 @388

Hola:

Estoy intentando conectar mi script MySQL pero no hay manera.
Tengo instalado MySQL en una máquina remota y mi código es el siguiente:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1.  my $database = "Datagrabs";
  2.  my $dsn = "DBI:mysql:database=datagrabs;host=x.x.x.x:3306";
  3.  my $user = ";prueba";
  4.  my $pwd = ";password";
  5.  
  6. my $dbh = DBI->connect($dsn,$user,$pwd, {PrintError => 0})
  7. or die "Couldn't connect to database: " . DBI->errstr;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4

Pero no hay manera.
Es muy simple pero me da el siguiente error.
Couldn't connect to database: Access denied for user ';prueba'@'x.x.x.x' (us
ing password: YES) at CTT_Test.pl line 22.


En el servidor tengo añadida mi dirección IP en la lista de reglas del cortafuegos.

También he creado el usuario 'prueba/password' en la BD.

¿Por qué me está fallando?

Gracias,
desdechina
Perlero nuevo
Perlero nuevo
 
Mensajes: 38
Registrado: 2013-01-11 08:21 @389

Publicidad

Re: conectanto Perl con MySQL

Notapor danimera » 2013-06-10 09:37 @442

¿Ya verificaste que ese usuario creado tenga permisos de uso para esa base de datos?
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: Conectanto Perl con MySQL

Notapor explorer » 2013-06-10 09:54 @454

Como dices que la base de datos es remota, debes comprobar lo que dice danimera: que el usuario dispone de permisos de acceso desde la máquina donde te estás conectando (la máquina cliente).

En la tabla users del MySQL remoto (la máquina servidor) debe aparecer el nombre de la máquina desde donde te conectas en la columna Host, del registro de tu usuario. O el carácter comodín '%' para indicar que se le permite conectarse desde cualquier máquina.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Conectanto Perl con MySQL

Notapor desdechina » 2013-06-11 04:49 @242

Sí.
He añadido mi IP al firewall del servidor.
He probado con mi usuario y con '%', con mi usuario y mi dirección IP.
Pero nada. ¡¡¡No hay manera!!!
desdechina
Perlero nuevo
Perlero nuevo
 
Mensajes: 38
Registrado: 2013-01-11 08:21 @389

Re: Conectanto Perl con MySQL

Notapor explorer » 2013-06-11 05:23 @265

A ver... si está configurado el cortafuegos, si en la base de datos hay permiso para que el usuario se pueda conectar desde cualquier sitio, queda por comprobar que en la configuración del MySQL esté escuchando en la IP para aceptar peticiones externas.

En el archivo /etc/mysql/my.cnf, comprueba el estado de esta variable: bind-addres. Si está así:

bind-address = 127.0.0.1

entonces MySQL sólo está escuchando en la dirección local, por lo que no está atendiendo peticiones externas. Lo cambias a

bind-address = 0.0.0.0

y reinicias el servicio MySQL. Ahora ya estará escuchando en todas las IP públicas del servidor.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14486
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Conectanto Perl con MySQL

Notapor desdechina » 2013-06-11 06:25 @309

He empezado de cero.

He borrado IP, usuarios...

Y al empezar de nuevo "ha funcionado".

Me maravillo algunas veces. Para que luego digan que eso de cierra y vuelve a entrar es la respuesta fácil.

¡¡¡Mil gracias chicos, por vuestra ayuda!!!
desdechina
Perlero nuevo
Perlero nuevo
 
Mensajes: 38
Registrado: 2013-01-11 08:21 @389


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: Google [Bot] y 0 invitados

cron