Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-11-2003
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
Linux, MySql, Windows

ok, este es mi problema, tengo un servidor Linux, el manejador de base de datos MySql y un cliente windows. Como acceder a mysql desde el cliente, tengo una herramienta que se llama MySqlfront la cual si instalaba localmente en windows mysql todo estaba bien, pero si trato de acceder al Mysql de linux, no puedo, podrian explicarme que debo hacer??? o por otro lado he intentado acceder a Mysql de Linux a través de MyOdbc pero tampoco puedo, cabe señalar que estoy haciendo mis pininos en Linux y desconozco el tema, se que en linux todo es via IP, Mysql de linux usa una IP???, en ese caso como saberla??? es la misma del servidor???, en fin espero que me aclaren mis dudas...gracias...
Responder Con Cita
  #2  
Antiguo 11-11-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
JorgeBec comentó:
pero si trato de acceder al Mysql de linux, no puedo,
¿Qué quieres decir con "no puedo"?

¿Te marca algún error? ¿Cuál?

Por otro lado, ¿con qué usuario intentas conectarte a MySql? ¿Este usuario tiene derechos para acceder al servidor de MySql?

// Saludos
Responder Con Cita
  #3  
Antiguo 11-11-2003
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
el mensaje desde el ODBC es
"Host 192.168.20.25 is not allowed to connect to this mysql"

cabe señalar que este host que se señala es mi IP, anteriormente instale de manera local bajo windows el Mysql, pero al momento no esta corriendo...y trato de conectarme con el usuario root...
Responder Con Cita
  #4  
Antiguo 11-11-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
JorgeBec comentó:
el mensaje desde el ODBC es
"Host 192.168.20.25 is not allowed to connect to this mysql"

cabe señalar que este host que se señala es mi IP, anteriormente instale de manera local bajo windows el Mysql, pero al momento no esta corriendo...y trato de conectarme con el usuario root...
Pero cuando tenías MySql instalado en tu máquina tu IP funcionaba como"localhost" y me parece que por defecto MySql asigna a root todos los derechos cuando se conecta desde localhost (es decir, desde la misma máquina en donde esté el servidor MySql) pero no cuando se conecta desde otras direcciones.

Tienes que asignar derechos a root en el MySql de Linux para conectarse desde tu IP.

// Saludos
Responder Con Cita
  #5  
Antiguo 11-11-2003
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
disculpa mi ignorancia y eso como se hace??? desconozco la administración de linux...no estoy en pañales pero tampoco soy un experto...gracias por tu respuestas...
Responder Con Cita
  #6  
Antiguo 12-11-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
JorgeBec comentó:
desconozco la administración de linux...no estoy en pañales pero tampoco soy un experto...gracias por tu respuestas...
Yo también la desconozco pero no se trata de Linux sino de MySql. No son lo mismo los usuarios del sistema Linux que los del servidor MySql aunque éste esté instalado en aquél.

Te recomiendo que busques ayuda sobre el comando GRANT en el manual de mysql para saber cómo crear usuarios y asignarles derechos.

// Saludos
Responder Con Cita
  #7  
Antiguo 12-11-2003
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
Agradezco de antemano tus respuestas...seguire tus recomendaciones...aunque no me suena que sea por el lado de mysql ya que cuando los instale localmente no tuve que mover nada de mysql, me refiero a nada de derechos...en fin seguire buscando...gracias...
Responder Con Cita
  #8  
Antiguo 12-11-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
JorgeBec comentó:
Agradezco de antemano tus respuestas...seguire tus recomendaciones...aunque no me suena que sea por el lado de mysql ya que cuando los instale localmente no tuve que mover nada de mysql, me refiero a nada de derechos...en fin seguire buscando...gracias...
Creeme Es una cuestión de derechos de mysql. Velo tú mismo en el mensaje que recibes:

Cita:
Host 192.168.20.25 is not allowed to connect to this mysql
Vamos a entender una cosa: por defecto, la instalación de mysql crea al usuario root y le asigna derechos absolutos desde localhost. Localhost significa: "máquina donde está instalado el servidor mysql".

Cuando instalas mysql en tu pc, localhost corresponde a tu pc y por eso no tienes que mover nada en la administración de mysql para acceder a las tablas: tú eres root y estás en localhost.

Cuando instalas mysql en otra máquina, localhost es esa máquina y tu pc es foránea para ese servidor. Podrás conectarte como root pero el servidor mysql en linux sólo dió derechos a root para localhost (el servidor linux) y tu pc no es localhost.

Si entras al servidor Linux y corres el comando

prompt> mysql -uroot -ptu password

verás que ahí sí puedes acceder a las tablas ya que estás conectandote a mysql desde el mismo servidor Linux que es el localhost para ese servidor mysql.

// Saludos

Última edición por roman fecha: 12-11-2003 a las 16:58:16.
Responder Con Cita
  #9  
Antiguo 12-11-2003
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
Ya me esta cayendo el 20 roman tienes toda la razon, estoy leyendo el manual de Mysql y al parecer es el comando Grant, solo que me esta marcando errores, sigo viendo pero si no cabe duda que es por ese lado, gracias...
Responder Con Cita
  #10  
Antiguo 12-11-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
JorgeBec comentó:
Ya me esta cayendo el 20
O eres de México o esta es una expresión sorprendentemente universal

Espero no confundirte con lo que ahora te voy a decir: ya que estás leyendo acerca del comando GRANT te recomiendo que de una vez leas las secciones 4.2.5 a 4.2.11 del manual de mysql que explican con detalle cómo funcionan los derechos en mysql.

La verdad es que el comando GRANT siempre me ha parecido una tanto obscuro y confuso y realmente no es difícil entender las tablas de derechos.

Un brevísimo resumen:

La tabla principal es la tabla 'users'. Si la combinación (usuario, host) no se encuentra en dicha tabla, se deniega acceso al servidor. Aquí se asignan derechos globales sobre todas las bases de datos pero se recomiendo inhabilitar aquí todos los derechos.

La tabla 'db' especifica qué usuarios, desde qué hosts y a qué bases pueden acceder. Los derechos aquí asignados son válidos para la base de datos que se especifique.

Si no se especifica el campo host de la tabla 'db' entonces los derechos se leen de la tabla 'host', esto es, si en 'db' hay un registro del tipo:

(host = '', db='tu base', user='fulano')

significa que fulano puede conectarse a la base 'tu base' pero sus derechos dependen del host desde el cual se conecte de manera que en la tabla 'host' puedes tener varias entradas para 'tu base' especificando, por ejemplo, que desde tal dirección puede editar y borrar registros pero desde otras sólo leer registros.

Las otras tablas, Tables_priv y Columns_priv te sirven para ser aún más específico en los derechos. Tables_priv restringe el acceso sólo a determinadas tablas de la base y Columns_priv sólo a ciertos campos de determinada tabla.

// Saludos y buena lectura!
Responder Con Cita
  #11  
Antiguo 12-11-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Lo olvidaba:

El comando GRANT no es otra cosa que una "simplificación" de la manipulación de las tablas que te mencioné (que por cierto están en la base da datos de nombre 'mysql').

// Saludos
Responder Con Cita
  #12  
Antiguo 14-11-2003
JorgeBec JorgeBec is offline
Miembro
 
Registrado: jul 2003
Posts: 159
Poder: 21
JorgeBec Va por buen camino
Gracias, a estas fechas ya pude hacer la conexión y en efecto era el comando grant......y en efecto soy orgullosamente mexicano, radico en la perla de occidente... de nuevo gracias, paisano...
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 00:31:18.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi