Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

problema con los usuarios (Creo) me sale Access denied for user

Estas en el tema de problema con los usuarios (Creo) me sale Access denied for user en el foro de Mysql en Foros del Web. bueno publico mi problema aca porque me parece que el problema no es por el PHP sino por los usuarios de mi MySQL. voy a ...
  #1 (permalink)  
Antiguo 28/10/2009, 16:40
Avatar de gokufast  
Fecha de Ingreso: abril-2007
Mensajes: 540
Antigüedad: 17 años
Puntos: 3
problema con los usuarios (Creo) me sale Access denied for user

bueno publico mi problema aca porque me parece que el problema no es por el PHP sino por los usuarios de mi MySQL.
voy a tratar de explicar paso a paso

Tengo un servidor de MySQL instalado en mi PC el cual tiene IP 10.0.0.250 y tiene los siguientes usuarios
User Password Host
root xxx localhost
123 123 localhost (no tiene todos los privilegios y no es Grant)

Tengo un una base de datos llamada garantes_test, la cual entre muchas tiene una tabla llamada socios_garantes en la cual hize un trigger para que al eliminar un registro dicho registro lo copie en otra tabla llamada socios_garantes_eliminados en la cual me muestre que usuario elimino dicho registro y cuando.

realice una interface con altas, bajas, modificaciones en PHP para que desde el navegador la gente pueda consultar los datos. y para conectarme a la base de datos tengo este codigo:
Código PHP:
<?php
session_start
();
include 
"seguridad.php";
$dbuser $_SESSION["usuario"];  
$dbpass $_SESSION["contrasena"];
function 
conectarse()
{
    global 
$dbhost,$dbuser,$dbpass;
    if (!(
$link=mysql_connect("localhost",$dbuser,$dbpass)))
       {
        echo 
"Error: No se ha podido establecer la conexi&oacute;n con el servidor";
        exit();
       }
    if (!
mysql_select_db("garantes_test",$link))
    {
        echo 
"Error: Base de Datos no encontrada";
        exit();
    }
    return 
$link;
}
?>
Ahora si ingreso con el user: 123 con contraseña: 123 en mi maquina y hago una eliminacion no hay problema, pero si ingreso desde otra PC de la LAN por ej. 10.0.0.55 al querer consultar los datos, me sale el siguiente error
Warning: mysql_connect() [function.mysql-connect]: Access denied for user '123'@'localhost' (using password: NO) in C:\xxx\xxx\xxx\conexion.php on line 13
Error: No se ha podido establecer la conexión con el servidor


busque por muchos lugares y todos tienen soluciones a veces muy radicales y otras que no me funcionaron, ojala me puedan ayudar, porque tengo la sensacion que es un cambio menor solamente.

un detalle de ultimo momento, cuando al usuario 123 le quito la contraseña si puedo entrar pero si le pongo una contraseña me sale el mismo error, jajajaja estoy mas en bolas que antes jajajjaa

una pregunta que se me vino a la cabeza, MySQL usa encriptacion para sus contraseñas? y es eso que al ingresar la misma no acepta?

Gracias de antemano.

Última edición por gokufast; 28/10/2009 a las 17:01
  #2 (permalink)  
Antiguo 28/10/2009, 17:08
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

El problema es aparentemente simple. Esto:
Cita:
Access denied for user '123'@'localhost' (using password: NO
Es el mensaje habitual de MySQL cuando la clave ingresada no corresponde, o el username no existe. Como la segunda posibilidad está excluida por ti, yo supongo la primera: Está entrando mal el password.

Otra posibilidad más (ya que al no contar con el número de error no se puede descartar) es que el usuario 123 tenga permisos insuficientes. Esto ocurre cuando el usuario ha sido creado, pero no se le han dado permisos de ningún tipo con GRANT. Eso hace que se loguee, pero como no puede hacer nada, ni tan siquiera un SHOW DATABASES, ni un SELECT, MySQL lo expulsa.
Asegúrate de que el user 123 tenga al menos permisos de SELECT en alguna tabla y vuelve a intentarlo.

Un tip: La IP 10.0.0.55 no es una IP pública, por lo que supongo que estás trabajando en una LAN. Ten cuidado con el stringconnection cuando intentes acceder desde afuera, y los permisos del Router.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 28/10/2009, 20:31
Avatar de gokufast  
Fecha de Ingreso: abril-2007
Mensajes: 540
Antigüedad: 17 años
Puntos: 3
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

1ro gracias por la respuesta, el usuario 123 tiene permisos de select, insert, update y delete pero no esta habilitada el GRANT para este usuario.

2do extactamente el ip 10.0.0.55 es de mi LAN por el momento este sistemita va a ser interno.
  #4 (permalink)  
Antiguo 29/10/2009, 04:19
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

Verifica la conexión usando el root y su password. Si funciona, el problema está en el usuario utilizado.
No te olvides lo que dije. Esto:
Cita:
Access denied for user '123'@'localhost' (using password: NO
significa que el user o el password son incorrectos o carecen de permisos (yo pienso más en el password).
Toma en cuenta también que el password de login es sensible a mayúsculas/minúsculas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 29/10/2009, 07:00
Avatar de gokufast  
Fecha de Ingreso: abril-2007
Mensajes: 540
Antigüedad: 17 años
Puntos: 3
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

gracias por la ayuda, pues si era la contraseña muy raro porque la revise vaaaarias veces por donde ingresaba y salia el mismo error, probablemente se me paso algo antes que ahora ya funciona.

una pregunta y que probablemente tenga que abrir otro tema, es el tema de que como comente al principio estoy haciendo un trigger que guarde los datos del registro eliminado y tambien registre que usuario fue el que elimino el registro a manera de auditoria, el registro de dicho usuario ya lo tengo resuelto ahora, lo que me interesa en este momento es el que me pueda registrar el IP de la PC del usuario que elimino el registro, vi en otros post que salia un usuario de esta forma:
[email protected] como se puede hacer esto? porque el ip que sale ahi supongo que es de una PC de la LAN no?

poder hacer que me salga [email protected] eso es lo que quiero, como lo logro?

mil gracias de antemano
  #6 (permalink)  
Antiguo 29/10/2009, 07:10
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

La función
Código SQL:
Ver original
  1. CURRENT_USER()
te devuelve el usuario que está realizando la consulta, con la estructura que deseas.
Código SQL:
Ver original
  1. SELECT CURRENT_USER();
  2. +----------------+
  3. | CURRENT_USER() |
  4. +----------------+
  5. | root@localhost |
  6. +----------------+
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 29/10/2009, 07:29
Avatar de gokufast  
Fecha de Ingreso: abril-2007
Mensajes: 540
Antigüedad: 17 años
Puntos: 3
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

si vi esa opcion, pero se puede hacer para que en lugar de salir @localhost me salga @(la ip de la maquina remota) se puede?
  #8 (permalink)  
Antiguo 29/10/2009, 08:22
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

Usando la función
Código sql:
Ver original
  1. SUBSTRING_INDEX(string, val, nroPos)
E lprimer parámetro es el string, en este caso CURRENT_USER() o USER(), lo mismo da.
El segundo parámetro es un string a buscar ('@').
El tercer parámetro es cuál aparición del string y hacia dónde va a leer.
Para que se entienda:
Código SQL:
Ver original
  1. SELECT SUBSTRING_INDEX(USER(),'@',1)
Devuelve lo que está a la izquierda del caracter '@', es decir, el nombre del usuario.
Código SQL:
Ver original
  1. SELECT SUBSTRING_INDEX(USER(),'@',-1)
Devuelve lo que está a la derecha del caracter '@', es decir, el host.


Veamos:
Código SQL:
Ver original
  1. mysql> SELECT SUBSTRING_INDEX(USER(),'@',1);
  2. +-------------------------------+
  3. | SUBSTRING_INDEX(USER(),'@',1) |
  4. +-------------------------------+
  5. | root                          |
  6. +-------------------------------+
  7. 1 ROW IN SET (0.00 sec)
  8.  
  9. mysql> SELECT SUBSTRING_INDEX(USER(),'@',-1);
  10. +--------------------------------+
  11. | SUBSTRING_INDEX(USER(),'@',-1) |
  12. +--------------------------------+
  13. | localhost                      |
  14. +--------------------------------+
  15. 1 ROW IN SET (0.00 sec)
  16.  
  17. mysql>
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 29/10/2009, 08:40
Avatar de gokufast  
Fecha de Ingreso: abril-2007
Mensajes: 540
Antigüedad: 17 años
Puntos: 3
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

gracias esas funciones me seran de utilidad, se puede cambiar el host? a parte del localhost?
  #10 (permalink)  
Antiguo 29/10/2009, 09:13
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

El host depende de la conexión. Lo administra directamente MySQL según el login del usuario.
En el ejemplo aparece localhost, porque se hizo en forma local. Si se hace en remoto, entonces aparecerá lo que corresponda a la PC usada por quien se loguea.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #11 (permalink)  
Antiguo 29/10/2009, 10:13
Avatar de gokufast  
Fecha de Ingreso: abril-2007
Mensajes: 540
Antigüedad: 17 años
Puntos: 3
Respuesta: problema con los usuarios (Creo) me sale Access denied for user

muchas gracias por la ayuda :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:07.