Terminología arquitectónica de MySQL

Al usar MySQL, en realidad utiliza al menos dos programas, ya que opera en una arquitectura cliente/servidor. El primer programa es el servidor MySQL, mysqld, que se ejecuta en el equipo en el que almacene sus bases de datos. Escucha solicitudes clientes que provienen de la red y accede a contenidos de la base de datos en función de dichas solicitudes para proporcionar a los clientes la información que piden.

Los demás programas son programas cliente que se conectan al servidor de base de datos y ejecutan consultas para indicar la información que necesitan.

La mayoría de distribuciones MySQL incluyen el servidor y varios programas cliente. (Si utiliza paquetes RPM en Linux, son independientes, por lo que debe instalar ambos.) Los clientes dependen de los objetivos que desee alcanzar. El más utilizado es mysql, un cliente interactivo que le permite ejecutar consultas y ver los resultados. Dos clientes administrativos son mysqldump un programa de copia de seguridad que vuelca los contenidos de las tablas en un archivo, y mysqladmin, que le permite comprobar el estado del servidor y realizar otras tareas administrativas como apagarlo. Las distribuciones MySQL también incluyen otros clientes. Si los clientes estándar no se ajustan a sus requisitos, MySQL dispone de una biblioteca de programación cliente que le permite escribir sus propios programas. La biblioteca se puede utilizar directamente desde programas C. Si prefiere otro lenguaje como , existen interfaces para Perl, PHP, Python, Java y Ruby.

La arquitectura cliente/servidor del sistema de bases de datos relacionales de MySQL le ofrece diferentes ventajas:

El servidor proporciona control de concurrencia para que dos usuarios no puedan modificar el mismo registro simultáneamente. Todas las solicitudes cliente pasan por el servidor. De modo que decide quién hace qué o cuándo. Si varios clientes quieren acceder a la misma tabla al mismo tiempo, no tienen que negociar el orden. Basta con que envíen sus solicitudes al servidor para que éste determine el orden de ejecución de las solicitudes.

No es necesario iniciar sesión en el equipo en el que se encuentre la base de datos. MySQL sabe cómo trabajar en entornos de red, de modo que puede ejecutar un programa cliente desde donde desee y el cliente se conectará al servidor a través de la red. La distancia no es problema; puede acceder desde cualquier punto del planeta. Si el servidor se encuentra en Australia, puede utilizar su portátil desde Islandia para acceder a la base de datos. ¿Significa esto que cualquiera puede acceder a sus datos a través de Internet? No. Las distribuciones MySQL cuentan con un flexible sistema de seguridad, para que permita el acceso a quien desee. Y puede determinar los privilegios de cada usuario que acceda. Por ejemplo, puede que Sally en la oficina de facturación sólo deba leer y actualizar registros, mientras que Phil, del servicio de asistencia, sólo pueda verlos. Puede configurar los privilegios individualmente. También puede configurar los privilegios de acceso para que los clientes sólo puedan conectarse desde el anfitrión en el que se ejecute el servidor.

Comparte