Acceder via ODBC a nuestro MySQL


Explicare facilmente como acceder via ODBC a MySQL para acceder con un cliente a la Base de Datos, en este caso Access, y favorecer la introducción de datos o manipulación de los elementos de la Base de Datos.

Actualización(12-12-2004):
Como solucionar el problema de:
Can’t connect to MySQL server on 192.168.0.2

Como solucionar el problema de:
Host 192.168.0.2 is not allowed to connect to this MySQL server

Hay un articulo complementario de como Acceder via ODBC a nuestro PostgreSQL

Para empezar nos iremos a su pagina principal de
MyODBC. Desde aqui, nos bajamos la ultima versión de MyODBC
myodbc-2.50.37-win95.zip para Windows 9x, tambien esta para NT/2000 en
myodbc-2.50.37-nt.zip

Primero de todo tendremos que tener instalado correctamente MySQL con alguna Base d Datos activa, y alguna tabla para empezar a probar el acceso a las tablas por ODBC.

Para configurar el ODBC para MySQL tenemos que hacer unos sencillos pasos en el cliente de Windows para configurar el Driver de MySQL.

Configuracion del Cliente Windows

Instalamos MyODBC en la plataforma Windows que necesitemos

Desde el panel de control en la parte de configuración de ODBC vamos la pestaña Use DNS le daremos a ADD. Desde aqui seleccionamos el Driver de MySQL.

Aparecera la pantalla de configuración del Driver de MySQL en la que debemos poner una serie de datos para que podamos entrar en el servidor donde tenemos nuestro MySQL.

  • Windows DNS Name: Ponemos el nombre con el que identificar en Windows la Base de Datos MySQL que vamos a acceder. (example: everyoneMySQL)
  • MySQL Host (Name or IP): Aqui le indicamos la IP del servidor o su nombre. (example: 192.168.0.1)
  • MySQL Database Name: El Nombre de la Base de datos que vamos a acceder. (example: MyBD)
  • User: El usuario con privilegios para acceder a la Base de Datos. (example: root)
  • Password: El password para acceder de ese usuario
  • Port (if not 3306): Es el puerto por donde se conecta a la Base de datos, por defecto usara el 3306

    Configuracion del Servidor Linux

    Para poder acceder al servidor Linux y acceder a MySQl no basta con lo anterior, sino que tenemos que dar privilegios a los usuarios para que puedan acceder a las Base de Datos y Tablas que contiene MySQL

    Para hacer esto necesitaremos acceder a la consola del servidor y acceder a MySQL

  • Para empezar accederemos como root a la Tabla mysql, donde se dan todos los privilegios de acceso a todos los usuarios

    shell> mysql –user=root mysql

  • Ahora indicamos que desde la IP 192.168.0.2 el usuario: gigi, con el password: gigi, va a poder acceder a la Base de datos MySQL

    mysql> INSERT INTO user (Host,User,Password) VALUES(‘192.168.0.2′,’gigi’,PASSWORD(‘gigi’));

  • Ahora indicamos que desde la IP 192.168.0.2 el usuario: gigi, puede acceder a la tabla: mytabla con los privilegios de: Seleccionar, Insertar, Modificar, Borrar, Crear, y Borrar

    mysql> INSERT INTO db
    (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,
    Create_priv,Drop_priv)
    VALUES
    (‘192.168.0.2′,’mytabla’,’gigi’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’);

  • Por ultimo le indicamos que empiece a aplicar estos privilegios en este momento

    mysql> FLUSH PRIVILEGES;

    Fijaros que las instrucciones siempre terminan con punto y coma (;)

    Para salir del modo consola de Mysql basta poner:

    mysql> \q

    Otras posibilidades para acceder mediante ODBC con DBTools

    Existe otro programa muy bueno para acceder a MySQL, y que se parece al administrador de Bases de Datos de SQLSERVER, muy sencillo de usar, se llama DBTools, funciona con MySQL, pero pronto podras usarlo con PosgreSQL, puedes bajarte la ultima versión: setup.exe

    Para acceder a Mysql es practicamente igual que antes:

  • Server Type: Indicas que Base de Datos emplear, ahora solo funciona con MySQL, preo pronto ira con PostgreSql
  • Server Name: Nombre con el que identificarlo
  • Hostname: La direccion o el Hostname del servidor de MySQL
  • Port Number: Es el puerto por donde se conecta a la Base de datos, por defecto usara el 3306
  • User ID: El usuario con privilegios para acceder a la Base de Datos. (example: root)
  • Password: El password para acceder de ese usuario

    Espero que os sea util, y que os guste.

    Esto es solo una introducción, pero podeis dar privilegios como mas os guste con muchas variantes, es solo cuestion de jugar un poco

    Actualización(12-12-2004):

  • Como solucionar el problema de: Can’t connect to MySQL server on 192.168.0.2

    Este problema es bastante comun por lo que he visto, y se soluciona editando /etc/mysql/my.cnf
    y comentando la linea “skip-networking”
    #skip-networking

    Ahora teneis que reiniciar MySql
    /etc/init.d/mysql stop
    /etc/init.d/mysql start

    Y con esto solucionas este problema

  • Como solucionar el problema de: Host 192.168.0.2 is not allowed to connect to this MySQL server

    Este problema es debido a los permisos de sobre la BD
    Primero entramos en la consola de MySQL
    mysql -u root -p

    y luego damos los permisos de esta forma:
    GRANT ALL PRIVILEGES ON basededatos.* TO [email protected] identified by ‘contraseña’;

    Y con esto solucionamos este problema

    Bibliografia:

  • http://www.mysql.com/documentation/mysql/bychapter/manual_Privilege_system.html#Adding_users
  • http://www.iserver.com/support/virtual/mysql/odbc/
  • Este post ha sido traido de forma automatica desde https://web.archive.org/web/20140625063149/http:/bulma.net/body.phtml?nIdNoticia=703 por un robot nigromante, si crees que puede mejorarse, por favor, contactanos.


    Deja una respuesta

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

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.