Servidor MySQL - Ejemplos - Ventajas y arquitectura de MySQL

Tabla de contenido:

Anonim

Introducción al servidor MySQL

¿Qué es el servidor MySQL?

Hay muchos RDBMS (sistemas) que están disponibles en el mercado para administrar las bases de datos, el más popular entre ellos es MySQL. MySQL es un sistema de gestión de bases de datos relacionales de código abierto (RDBMS) y se basa en el lenguaje de consulta estructurado (SQL, que es un lenguaje para administrar la base de datos y realizar operaciones CRUD como crear, leer, actualizar y eliminar). Aquí hablamos del servidor MySQL.

MySQL, un breve viaje:

  • Primero fue creado y propiedad de una compañía sueca llamada MySQL AB con su primer lanzamiento inicial en el año 1995, el 23 de mayo.
  • En 2008, MySQL AB fue adquirida por Sun Microsystems en un acuerdo de mil millones.
  • En 2010, Sun Microsystems fue adquirido por Oracle.
  • La última versión del servidor MySQL es 8.0, que se lanzó el 19 de abril de 2018.

MySQL puede ejecutarse virtualmente en cualquier plataforma, como Linux, Solaris y Windows, y es el RDBMS más popular y más extendido porque es un servidor DB de código abierto y gratuito que proporciona funcionalidades de base de datos muy avanzadas.

Pocos ejemplos en los que se utiliza MySQL Server son:

  • Google, Facebook, Yahoo y muchos otros gigantes tecnológicos han empleado MySQL para mejorar sus capacidades de procesamiento de datos.
  • MySQL es un componente muy importante para LAMP, que es una plataforma de desarrollo web con Linux como sistema operativo, Apache como servidor web, MySQL como RDBMS y PHP como lenguaje de programación. Sin embargo, Python o Perl pueden usarse también en lugar de PHP como lenguaje de programación o scripting.
  • Se puede usar en todas partes, donde los datos deben almacenarse de manera relacional, es decir, en formato tabular. Cada tabla tiene una clave primaria y las filas pueden relacionarse entre sí utilizando esta clave primaria.

Ventajas del servidor MySQL:

  • Portátil -

Puede ejecutarse en una gran cantidad de plataformas como UNIX, Solaris, Windows, OS / 2, etc.

  • Fuente abierta -

Lo más importante es que MySQL está disponible para todos como un software de código abierto y cualquiera puede usarlo de forma gratuita al aceptar sus términos y condiciones.

  • Seguridad -

Todas las bases de datos MySQL son muy seguras y están bloqueadas con contraseñas que están encriptadas usando algoritmos complejos y nunca es fácil violarlas.

  • Conectividad

Hay una buena cantidad de mecanismos disponibles para conectarse con servidores MySQL como TCP / IP, UNIX Sockets y canalizaciones con nombre.

  • Actualizaciones regulares y desarrollo continuo

Al ser una plataforma de código abierto, MySQL tiene una gran comunidad de desarrolladores y publican parches y actualizaciones para MySQL regularmente.

Arquitectura del servidor MySQL:

La arquitectura de MySQL se compone principalmente de los siguientes componentes:

  • Servidor MySQL
  • Clientes MySQL
  • Directorio de datos
  • Motor de almacenamiento

MySQL se basa en un modelo cliente-servidor.

Fuente: http://actimem.com/wp-content/uploads/2015/09/mysql.png.webp?x78177

Servidor MySQL:

Es una instancia de MySQL donde los datos reales se almacenan y procesan. Este componente es responsable de procesar las consultas entrantes provenientes de clientes MySQL y manipula las tablas de la base de datos. También es responsable de aceptar conexiones de bases de datos que provienen de clientes MySQL. Los programas importantes del componente del servidor MySQL son:

  • MySQL:

Es un programa de demonio del servidor MySQL. Se ejecuta en segundo plano y gestiona solicitudes de clientes MySQL.

  • mysqld_safe:

Es un programa que reinicia el servidor cada vez que se produce un error. Esta fue una característica de seguridad de este programa, la otra es que mantiene los registros de la información de tiempo de ejecución en un registro de errores.

  • mysql.server:

Es una utilidad MySQL que se ha proporcionado para iniciar el script mysqld_safe.

  • mysqld_multi:

Este programa se utiliza para administrar muchos procesos mysqld que escuchan conexiones en diferentes canales de conexiones como TCP / IP, UNIX Sockets, etc.

Clientes MySQL:

Los clientes MySQL son básicamente las utilidades utilizadas para comunicarse con el servidor MySQL. En otras palabras, estos son los programas que se comunican con el servidor MySQL. Ejemplos de clientes MySQL son programas como Perl, PHP, Java, MySQL, mysqladmin y herramientas como MySQL dump, mysqlcheck, myisamchk. Los programas importantes en clientes MySQL son:

  • MySQL es un shell de SQL donde uno puede escribir y ejecutar declaraciones SQL. Puede ser interactivo o no interactivo. Cuando se usa de forma interactiva, los resultados se devuelven en formato tabular, mientras que el uso no interactivo devuelve el resultado en un formato separado por tabulaciones.
  • mysqladmin es un cliente para administrar el servidor MySQL. Se puede usar para verificar archivos de configuración, actualizarlos, verificar el estado actual del servidor, y también para crear y descartar las bases de datos, etc.
  • mysqldump es una utilidad de cliente y un programa de respaldo de base de datos que realiza respaldos lógicos.
  • mysqlcheck y myisamchk son clientes que se utilizan para realizar tareas de mantenimiento en las tablas de la base de datos, como reparar, optimizar y analizar las tablas.

Directorio de datos:

El Directorio de datos contiene los datos reales que se almacenan como resultado de las operaciones en curso sobre cualquier aplicación / software o servidor. Incluye bases de datos, tablas, archivos de registro, procedimientos almacenados, etc.

  • La ubicación predeterminada para datadir en Linux es: / var / lib / mysql
  • La ubicación predeterminada para datadir en Windows es: C: \ ProgramData \ MySQL \ MySQL Server 5.8
  • El nombre del archivo de configuración que contiene la ruta para datadir es mysqld.cnf
  • cnf se puede encontrar en /etc/mysql/mysql.conf.d/mysqld.cnf
  • De hecho, es posible cambiar la ubicación de almacenamiento de datadir en caso de que alguien se quede sin espacio asignado. Lea el siguiente artículo que explica muy bien cómo se puede lograr:

https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-16-04

Motor de almacenamiento:

Un motor de almacenamiento es un módulo de software que utiliza RDBMS para realizar operaciones CRUD (crear, leer, actualizar y eliminar).

Los motores de almacenamiento son de dos tipos en MySQL:

  • Transaccional
  • No transaccional

La principal diferencia entre el motor de almacenamiento transaccional y no transaccional es que las tablas transaccionales registrarán todas las operaciones de la base de datos en un archivo de registro, por lo que incluso si MySQL falla, aún puede recuperar sus datos, aunque este no es el caso con los motores no transaccionales. Sin embargo, para señalar, los motores no transaccionales son mucho más rápidos y también tienen menores requisitos de espacio en disco. A continuación se muestran algunos de los motores de almacenamiento que está utilizando MySQL, el más utilizado entre ellos es InnoDB.

Motores de almacenamiento compatibles con MySQL:

  • InnoDB
  • MyISAM
  • Memoria
  • CSV
  • Unir
  • Archivo
  • Federado
  • Agujero negro
  • Ejemplo

Artículos recomendados

Esta ha sido una guía para el servidor MySQL. Aquí en este artículo, hemos estudiado ejemplos, ventajas y arquitectura del servidor MySQL. También puede consultar los siguientes artículos para obtener más información:

  1. Cheat Sheet MySQL
  2. ¿Qué es el servidor de Tableau?
  3. MySQL vs SQL Server