Navegando por diariolinux.com, me encuentro con esta entrada : http://diariolinux.com/2007/07/03/mysql-proxy-050/
Se trata de un Proxy para MySQL bajo licencia GPL, ¡Genial!, ¿que porque es genial?.
Básicamente gracias a un proxy para MySQL podemos monitorizar, analizar o transformar cualquier tipo de petición desde un cliente hacia el servidor de Base de datos. Como bien explica en la documentación oficial, podemos usarlo para :
- Balanceo de carga : por ejemplo si queremos tirar de ciertas consultas mas lentas en otra maquina que tiene una replica de la base de datos.
- Failover : supongamos que el servidor de base de datos “se cae”, podemos realizar un backup al “vuelo” de las peticiones y almacenarlas para su posterior uso.
- Analisis de peticiones : porque no analizar que tipo de peticiones se hacen comúnmente de una forma mas “transparente” sin necesidad de tocar nuestro servidor de producción, asà como por ejemplo analizar tiempos de respuesta, realizar estadÃsticas generales, etc.
- Filtrado de peticiones : Podemos crear un filtro de seguridad para ciertas peticiones que no deseamos; que por ejemplo ciertos hosts realicen hacia MySQL, o algún tipo de filtro de seguridad que examine peticiones potencialmente peligrosas (escape a la shell para ejecutar comandos, inserciones en ciertas tablas…)
- Modificación : Al igual que el filtro anterior, podemos determinar que peticiones no queremos y por lo tanto modificarlas “al vuelo”. Un divertido ejemplo seria filtrar una query a la tabla “password” entregando un hash incorrecto, para que un simpático atacante se de golpes en la cabeza pensando porque si estando crackeada la contraseña no funciona :P.
Ademas incluye algo bastante interesante, que es soporte para Lua , un lenguaje de scripting bastante rápido y fácil. En su página Web podemos encontrar algunos ejemplos muy utiles para empezar a desarrollar nuestros propios scripts :
- query interception
- query rewriting
- injecting queries
- returning a resultset
- executing shell commands
- loggin
- using proxy without changing port
Por lo tanto una herramienta muy muy interesante para cualquier administrador y desarrollador :). Asà que en cuanto tenga un minuto prometo dedicarle un extenso documento a esta fantástica utilidad.
4 de Julio de 2007 a las 23:21
Descubriendo MySQL-Proxy ¡Que gran utilidad!…
Básicamente gracias a un proxy para MySQL podemos monitorizar, analizar o transformar cualquier tipo de petición desde un cliente hacia el servidor de Base de datos. Como bien explica en la documentación oficial, podemos usarlo para…..
5 de Julio de 2007 a las 4:01
[...] Continuar leyendo [...]
5 de Julio de 2007 a las 11:24
Mysql-Proxy…
Básicamente gracias a un proxy para MySQL podemos monitorizar, analizar o transformar cualquier tipo de petición desde un cliente hacia el servidor de Base de datos. Como bien explica en la documentación oficial……
5 de Julio de 2007 a las 13:51
No darÃa demasiada sobrecarga a los sistemas?. Incluso, podrÃa ocurrir, que diera problemas con las aplicaciones web realizadas.
Lo veo bien, para análisis/testeo, para comprobar si se están mandando bien las consultas al servidor, si se está cometiendo sqlinjection, etc.
5 de Julio de 2007 a las 14:06
Esto es como todo, depende del uso que le des, si vas a intentar filtrar 50.000 peticiones para algo especifico, pues se notaria y bastante. Y para eso te compensarÃa más tener una maquina dedicada o sobrada de recursos :).
Aún asà es una utilidad genial lo que mas me ha interesado ha sido la modificación al vuelo y el failover.
Un saludo!
22 de Septiembre de 2007 a las 1:39
[...] Descubriendo MySQL-Proxy | Los de Comvive [...]
12 de Diciembre de 2007 a las 14:47
[...] otras muchas caracterÃsticas interesantes que podemos encontrar en losdecomvive.com, Hag un pequeño copy paste de los puntos a [...]