Webeando (con perdón)

Categorías:

Archivos:

<Diciembre 2024
Lu Ma Mi Ju Vi Sa Do
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          


Blogalia

WAMC Issue 2: El Guardián de las llaves se ha jubilado y el nuevo no nos entiende

Seguimos montando pues nuestra plataforma WAMC chachona lista para entender UTF-8: Windows 2003, Apache norecuerdocual, MySQL 4.1 y ColdFusion 7.

Bien, pues como comentaba en la primera entrega de sucedidos WAMC (que me gusta la palabreja), MySQL 4.1 ha cambiado la forma de tratar las claves, y no se lleva con las anteriores versiones. Si no usamos claves no hay problema, pero no sólo no es buena costumbre eso de no usar claves, sino que el asistente de configuración de MySQL nos obliga a incluir una para el usuario root (lo cual está muy bien).

Consecuencias:


  1. aplicaciones como phpMyAdmin 2.6.1, que no tratan correctamente estas nuevas claves, no pueden acceder a las bases de datos, devolviendo un error client does not support authentication protocol requested by server
  2. CF 7 usa drivers para MySQL 3.* Si usamos MySQL 4.1.* y claves para conectar a las bases de datos, nos devolverá el error:


    Connection verification failed for data source: basededatosmysql

    java.sql.SQLException: Communication failure during handshake. Is there a server running on localhost:3306?

    The root cause was that: java.sql.SQLException: Communication failure during handshake. Is there a server running on localhost:3306?



Soluciones:




    1. usar otro gestor para MySQL (MySQL Control Center no presenta este problema, pero tampoco acepta UTF-8).

    2. trabajar con las bases de datos a pelo (después de todo, el phpMyAdmin lo usamos en producción, no en explotación).

    3. decirle a MySQL que se enrrolle con las claves antiguas, como cuentan aquí o aquí en español (y tres meses antes).





    1. instalar un conector ODBC para MySQL y conectar por ODBC.

    2. o actualizar el driver JDBC y conectar a través de ese driver, la solución indicada por Macromedia.




    Nota: la TechNote de Macromedia, escrita para CF 6.1, indica el directorio cf_root/WEB-INF/lib para colocar el fichero jar. En CF 7 (al menos, en mi instalación) este directorio es cf_root/lib.

    Comentar, algo fuera de tema, que si lo que usamos para conectar a MySQL no es ColdFusion, sino PHP, hay que actualizar a la versión 5.0.3. De nada.

    Y seguimos en ello....

2005-02-21 01:00 | Categoría: ColdFusion | 2 Comentarios | Enlace

Referencias (TrackBacks)

URL de trackback de esta historia http://webcraft.blogalia.com//trackbacks/26952

Comentarios

1
De: Gero Fecha: 2009-03-01 21:22

ke onda loco, mira una pregunta, instale cfm en mi pc y necesito conectarla a la base de datos wamp, y necesito conectarla desde mi application.cfm pero no puedo heeeelp!

Gracias



2
De: Ernesto Fecha: 2009-03-05 22:42

Gero, no sé si te he entendido bien, pero voy a intentar responder. Por partes...

* WAMP no es una base de datos, es una arquitectura, compuesta de Windows Apache MySQL y PHP. Si usas ColdFusion en vez de PHP, estamos en una arquitectura WAMC. La base de datos es MySQL.

* La conexión a la base de datos no se hace desde el application.cfm, sino desde cada consulta (cfquery), indicandola en el parámetro datasource

* Antes de conectar a la base de datos, tienes que haber creado la conexión desde el administrador de ColdFusion. Si lo has instalado localmente, suele estar en http://localhost/CFIDE/administrator/ En esta página tienes instrucciones detalladas (en inglés)

Si lo has instalado hace poco, supongo que será la versión 8, que ya trae dirvers nativos para MySQL 4 y 5, por lo que se comenta en este artículo no te hace falta.



© 2004 - 2005 Netito
Powered by Blogalia