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

MySQL ¿Buena elección?

Estas en el tema de MySQL ¿Buena elección? en el foro de Bases de Datos General en Foros del Web. Hola a todos. Voy a comenzar un desarrollo en Delphi para sustituir una aplicacion previa hecha con puro Access. Las caracteristicas de lo que busco ...
  #1 (permalink)  
Antiguo 10/03/2003, 09:23
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
MySQL ¿Buena elección?

Hola a todos.

Voy a comenzar un desarrollo en Delphi para sustituir una aplicacion previa hecha con puro Access.

Las caracteristicas de lo que busco son las siguientes:

- Una instalacion central con posibles replicaciones parciales sobre laptops en vehiculos en movimiento.
- Posibilidad de ser accesada desde PHP.
- 200 transacciones diarias (maximo).
- Diez a quince usuarios conectados (maximo cinco simultaneos).
- Posible almacenamiento de imagenes (no es primordial, podria resolverlo fuera de la base de datos).
- Posible almacenamiento de sonido (no es primordial, podria resolverlo fuera de la base de datos).
- Seguridad intermedia.
- No me va a ser facil decirle al cliente que debe invertir mucho dinero en una base de datos.

¿Que creen ustedes? ¿Es MySQL una buena eleccion? ¿Alguna razon para pensar en otra alternativa?

Gracias.
  #2 (permalink)  
Antiguo 10/03/2003, 12:06
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 5 meses
Puntos: 11
Re: MySQL ¿Buena elección?

Pues MySql te cumple con todos los requisitos que deseas.... ademas de ser una de las mas livianas, rapidas y sobre todo baratas (Gratis)

Para la parte de la replicacion te sera muy util ya que no consume mucho recurso en bytes.

La unica recomendacion es que tengas mucho cuidado con el manejo de la integridad ya que esta no esta soportado completamente en MySql, asi que tendras que trabajar en lo referente a ese aspecto.... por lo demas
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #3 (permalink)  
Antiguo 10/03/2003, 12:07
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Gracias Linterns.

  #4 (permalink)  
Antiguo 10/03/2003, 14:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
A la hora de decidirte por Mysql .. solo tendras que conocer que Mysql (hasta la versión 3.x.x que es la actual estable fuera de ir con pruebas sobre la alfa 4.x ..) tiene sus limitaciones:

Por ejemplo ...

** No soporta integridad referencial tal cual lo hace Access .. osese las claves foraneas las tienes q gestionar tu a mano y no se respeta la integridad referecial de los datos si borras alguna clave de alguna tabla relacionada .. (solo en tablas tipo innob posee claves foráneas ..)

(esto en principio no es un problema .. solo si tienes un modelo de datos "fuerte" con muchas relaciones entre tablas y muyy normalizado tal vez Mysql no sea la mejor opción.)

** No soporta sub-consultas standars tipo SELECT * FROM tabla WHERE (SELECT * FROM otratabla .... ). Pero se puede suplir con oras técnicas como el JOIN LEFT ...

(esto tampoco es problema .. solo es un poco mas de tiempo de desarrollo ... segun las opcinoes q escojas para solventar el problema ..)

** Transacciones: .. No es su punto fuerte .. Solo bloquea de una vez "tablas" enteras (no reigistros como otros motores de BD) ...


Ahora bien . conociendo las "falencias" de Mysql (todo esto en pro de una mayor velocidad en consultas) podras decidirte por un motor de BD u otro .. Como te comento, todo es posible hacerlo con Mysql (salvo algunos temas en transacciones ..).

Por otro lado .. si ha de ser desarrollado en PHP .. la mejor opción es Mysql .. Meter por ejemplo un M$ SQL server a PHP es pasar por un cuello de botella (al tener q hacer las conexiones via ODBC) .. mientras q PHP enlaza directo y con funciones nativas a Msyql. (y bueno . licencia es gratuita .. a nivel legal)

Sobre la "replicación" en laptops .. Si esos laptops tienen conexión a internet (ya sea inambrico u otro médio) podran acceder al servidor Mysql sin ningun problema usando como cliente a un navegador cualquiera y programado en PHP por el lado del servidor ..

Uno de los problemas de Mysql tambien es la de "sincronización" entre dos servidores Mysql por ejemplo .. pero hay erramientas que te pueden facilitar la tarea o bien hacerlo tu mismo con tu aplicación PHP ..

Otro de los "detallitos" de Mysql es que por defecto Mysql no "trae" un GUI tal que el Access por ejemplo .. pero hay muchos en el mercado con mas o menos funciones y tanto en Windows como en Linux y otros S.O. (incluido el famoso GUI en PHP para mysql "phpMyadmin") con esto podras crear tus modelos de datos mas o menos tal cual lo hacias en Access ..e incluso migrar todas las tablas Access a Mysql (pero como te mencioné .. tu programación sería la q tendría q velar la integridad referencial de las tablas/datos ..)

Algunos links para q vallas viendo:

La web oficial de Mysql:
www.mysql.com

Mysql en "castellano" ...
www.mysql-hispano.org

GUI's para windows:

Gratuitos:
http://www.webyog.com/

y si encuentras el Mysql Front End tambien era bueno .. ahora lo descontinuado pero en google aparencen la ultimas versiones q salieron ..

(ambos permiten conexiones ODBC (tu Access) a Mysql para hacer cualquier tipo de volcados automáticos )

Comerciales "BUENISIMOS":
www.mysqlstudio.com
www.mysqlmanager.com


Un saludo,
  #5 (permalink)  
Antiguo 10/03/2003, 15:11
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 3 meses
Puntos: 5
Otra buena opción sería PostgreSQL, que elimina algunos de los problemas de MySQL, por ejemplo te hace bloqueos por registro y soporta muchas mas funciones transaccionales... No recuerdo bien, pero me parece que también soporta Stored Procedures (SP's)

www.postgresql.com

Saludos
__________________
Manoloweb
  #6 (permalink)  
Antiguo 10/03/2003, 16:15
 
Fecha de Ingreso: febrero-2001
Mensajes: 1.374
Antigüedad: 23 años, 3 meses
Puntos: 11
Totalmente de acuerdo con Manolo. No solo que PostgreSQL es mas potente y ofrece muchas mas posibilidades, sino que tambien compite con otras bases de datos mas potentes. Si este punto se pasa por alto las consecuencias pueden ser catastroficas. Ya sea porque:

1) El proyecto se agrande y tengas que migrar la base de datos. Esto hace que tu empresa pierda tiempo y dinero, lo cual significa que alguien se olvido de planificar antes de implementar. Y no esta demas decir que errores como este se pagan con el despido.

2) Hay que estar al tanto de las tecnologias que se utilizan en el mercado para poder implementarlas. Esto es importante a la hora de ofrecer soluciones y generar resultados positivos a nivel laboral.

Con esto no digo que PostgreSQL sea la mejor solucion, solo digo que es la primera opcion de las tantas que existen antes de tomar una desicion.

Saludos,
Tuk
  #7 (permalink)  
Antiguo 10/03/2003, 16:22
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Gracias a todos por sus respuestas, voy a analizar la opcion PostgreSQL que no habia tomado en cuenta hasta ahora (sobre todo a la luz de la reveladora frase de Tuk "...errores como este se pagan con el despido..."). Realmente escalofriante.

Saludos.
  #8 (permalink)  
Antiguo 10/03/2003, 16:26
 
Fecha de Ingreso: febrero-2001
Mensajes: 1.374
Antigüedad: 23 años, 3 meses
Puntos: 11
Cita:
errores como este se pagan con el despido
Siempre quise decir eso

Saludos!
  #9 (permalink)  
Antiguo 10/03/2003, 17:18
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Hay que tener en cuenta tambien en que S.O. puede correr el motor de Base de datos ...

Mysql tiene versiones en Windows y Linux .. PostgreSQL en Linux y un lio enorme + cuello de botella si se llega a instalar en windows con cgwin ...

Si hay oportunidad de correr el servidor de Base de datos en Linux (tal vez aprovechando para meter ahí mismo PHP) .. Sería una buena Opción PostgreSQL y sigue siendo de la misma filosofía GNU ..

A todo esto .. hay q pensar en los Drivers ODBC que te van hacer falta .. sobre todo para acceder al motor de Base de datos que elijas para accederlo via ODBC para Delphi .. PHP puede acceder de forma nativa u ODBC ...


Un saludo,
  #10 (permalink)  
Antiguo 10/03/2003, 23:24
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 4 meses
Puntos: 1
El único problema que le encuentro a PostgreSQL es que casi no hay servidores web que lo soporte, llevo vario tiempo preguntando por uno confiable y na mas no.
  #11 (permalink)  
Antiguo 11/03/2003, 12:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Cita:
Mensaje Original por urjose
El único problema que le encuentro a PostgreSQL es que casi no hay servidores web que lo soporte, llevo vario tiempo preguntando por uno confiable y na mas no.
Obviamente si lo miran en los planes "Windows" jeje no lo vas a encontrar :PPPP

Fijate en este servicios de Hosting .. Solo se dedican a Postgresql .. (como empresa, precios, etc no tengo idea como serán .., pero por lo menos se especializan en PostgreSQL)

http://www.pghoster.com/

Un saludo,
  #12 (permalink)  
Antiguo 23/03/2003, 16:25
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
Quería comentar que el desarrollo que ya he comenzado se basa mas de lo que pensaba en la parte PHP, por lo que creo que ha sido acertada la selección de MySQL hasta ahora.

Aunque sigo estando a tiempo para oir nuevos comentarios...

Saludos.
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 16:04.