Comparacion entre MySQL y SQL Server

Me he permitido compilar esta pequeña comparación entre esos dos gestores de bases de datos, he elegido esos dos por que de alguna manera son los mas distribuidos por la red, también una de las razones ha sido absolver las dudas que frecuentemente se presentan a la hora de desarrollar aplicaciones con acceso a base de datos.

De ambas partes podemos leer mucho en favor de ellos mismos, pero esta comparación esta resumida en puntos que nos interesan a los desarrolladores, podría decir que es una comparación imparcial.

Importante: Ambos gestores son totalmente diferentes entre si tanto en arquitectura, forma almacenar los archivos, etc., todo es diferente en cada uno. Éste artículo se enfoca en características fuera del ámbito de los internals que tienen que ver más con puntos de propósito general para el usuario final (nosotros).

MySQL

Sin lugar a dudas MySQL es uno de los gestores de base de datos mas populares de la red. Sin embargo desde sus inicios su objetivo ha sido ser el gestor de base de datos libre mas rápido posible pero sacrificando muchas características como el ser compatible con ACID, tener procedimientos almacenados y otras características que los desarrolladores agradecemos mucho (por que ahorran cientos de lineas de código).

Una de las razones por la que MySQL es permanentemente comparado frente a SQL Server es por que ambos son populares en la misma plataforma (ver siguiente gráfico). También debo resaltar que MySQL tiene herramientas mejoradas principalmente para Windows, muchas están disponibles también para Linux pero no siempre están actualizadas o tienen las mismas prestaciones.

Descargas de MySQL desde Sistemas Operativos tomado de mysql.com

 

SQL Server

Microsoft ha desarrollado este gestor de base de datos que soporta y es compatible con casi todo, por el mismo hecho de que fue concebida para venderse y ganar dinero a diferencia de MySQL. SQL Server no tiene mucho en contra salvo el precio, pero para combatir la popularidad de MySQL hace algunos años también tiene una versión libre y redistribuible incluso en aplicaciones comerciales (bajo algunas condiciones que no tienen que ver necesariamente con el precio).

La tabla comparativa

He aquí la tabla comparativa, si hacemos una comparación punto por punto la tabla sería de varias paginas es por eso que he obviado a propósito algunos puntos. Si tienen alguna sugerencia importante para agregar a esta tabla por favor hagan saber en los comentarios más abajo.

 

 

Tabla de comparación entre MySQL y SQL Server
Característica MySQL SQL Server Express SQL Server
Costo Libre y suscripción con soporte Libre con limitaciones De pago
Open Source Si No No
Plataformas Linux, Windows y muchas otras Sólo Windows Sólo Windows
Limite de tamaño de la base de datos Limitado por el sistema operativo 10Gb Limitado por el sistema operativo
Compatibilidad ACID Depende del motor de almacenamiento Si Si
Transacciones Si Si Si
Servicio de reportes No Si Si
Posibilidad de elegir diferentes formas de almacenamiento Si No No
Claves Foráneas (Foreign Keys) Depende del motor Si Si
Vistas Si Si Si
Procedimientos almacenados Si Si Si
Triggers Si Si Si
Cursores Si Si Si
Sub consultas Si Si Si
Replicación Si Limitado Si
Funciones definidas por el usuario (UDF) Si Si Si

Creo que esta todo lo que necesitamos saber. Hay otros detalles mas avanzados en los que cada uno tiene lo suyo, MySQL ha evolucionado mucho, ha recorrido un largo camino para llegar a donde está. Esperemos que Oracle continúe con este proyecto y no lo deje aislado.

 

He aquí una gráfica que muestra la evolución de uso de cada uno de los gestores.

Ranking de uso de base de datos, puede ver el gráfico interactivo aquí.

 

Espero sus comentarios.

 

10 Respuestas a “Comparacion entre MySQL y SQL Server”
    • Ivan Cachicatari 24 Mar 2018
      Reply

      Hay algunas similitudes que van con los estándares de SQL, pero en sí la sintaxis difiere mucho, por ejemplo:
      Puedes ejecutar la siguiente consulta en ambos: select campo1,campo2 from tabla;
      Pero si quieres los primeros 10: SQL Server select top 10 campo1,campo2 from tabla; MySQL: select campo1,campo2 from tabla limit 10;

  1. Leonardo 16 Nov 2018
    Reply

    Hola.. en la actualidad existe SQL Server Express y funciona muy bien.. yo tengo una base de datos con 11 millones de registros en una maquina virtual con 4 gb de ram y 2 nucleos xeon

    • Ivan Cachicatari 24 Jul 2018
      Reply

      T-SQL es solamente el nombre del grupo de sentencias soportadas por SQL Server, básicamente es un super-lenguaje que contiene al SQL.
      Pasa lo mismo con MySQL, pero no tiene nombre específico, algunos simplemente lo nombran como MySQL procedural language, pienso que lo correcto es nombrarlo como MySQL Stored Procedures

Dejar una Respuesta