# Servidor de base de datos

Un servidor de base de datos es un servidor que utiliza una aplicación de base de datos que proporciona servicios de base de datos a otros programas informáticos o a ordenadores, según lo define el modelo cliente-servidor. Los sistemas de administración de bases de datos (DBMSs) frecuentemente proporcionar funcionalidad de servidor de bases de datos, y algunos sistemas de administración de bases de datos (como MySQL) se basan exclusivamente en el modelo cliente-servidor para el acceso a la base de datos (mientras otros, por ejemplo, SQLite, están diseñados para usarse como una base de datos integrada).
Los usuarios acceden a un servidor de base de datos a través de un "front end", que se ejecuta en el ordenador del usuario y muestra los datos solicitados, o a través del "back end", que se ejecuta en el servidor y maneja tareas como el análisis de datos y el almacenamiento de datos.
En un modelo de maestro-esclavo , los servidores maestros de base de datos son ubicaciones principales y centrales de datos mientras que, los servidores esclavos de la base de datos son copias de seguridad sincronizadas que actúan como proxies.
La mayoría de aplicaciones de base de datos responden a un lenguaje de consulta. Cada base de datos comprende su lenguaje de consulta y convierte cada consulta enviada a un formato legible por el servidor y lo ejecuta para recuperar resultados.
Algunos ejemplos de aplicaciones de base de datos patentadas incluyen Oracle, DB2, Informix, y Microsoft SQL Server. Los ejemplos de aplicaciones de base de datos de software libres incluyen PostgreSQL; y bajo la Licencia Pública General GNU incluyen Ingres y MySQL. Cada servidor utiliza su propia lógica de consulta y su propia estructura de consulta. El lenguaje SQL (Lenguaje de Consulta Estructurada) es más o menos el mismo en todas las aplicaciones de base de datos relacionales.
Para aclarar, un servidor de base de datos es simplemente un servidor que mantiene los servicios relacionados con los clientes a través de aplicaciones de base de datos.
DB-Engines enumera más de 300 DBMSs en su clasificación.

## Historia

Las bases de datos para modelar grandes conjuntos de datos fueron introducidas por primera vez por Charles Bachman en 1969. Bachman introdujo los diagramas de estructura de datos (DSD) como un medio para presentar datos gráficamente. Los DSD proporcionaron un medio para representar las relaciones entre diferentes entidades de datos. En 1970, Codd introdujo el concepto de que los usuarios de una base de datos deberían ignorar el "funcionamiento interno" de la base de datos. Codd propuso la "visión relacional" de los datos qué más tarde evolucionaron hacia el Modelo Relacional qué la mayoría de las bases de datos utilizan hoy en día. En 1971, el Grupo de Informes de Tareas de Bases de datos de CODASYL (la fuerza impulsora detrás del desarrollo del lenguaje de programación COBOL) propuso por primera vez un "lenguaje de descripción del datos para describir una base de datos, un lenguaje de descripción del datos para describir esa parte de la base de datos conocida por un programa y un lenguaje de manipulación de datos". La mayor parte de la investigación y el desarrollo de bases de datos se centró en el modelo relacional durante el la década de 1970.
En 1975 Bachman demostró cómo el modelo relacional y el conjunto de estructuras de datos eran formas similares y "congruentes" de estructurar los datos mientras trabajaba para Honeywell. El lmodelo entidad-relación fue propuesto por primera vez en su forma actual por Peter Chen en 1976 mientras realizaba una investigación en el MIT. Este modelo se convirtió en el modelo más utilizado para describir bases de datos relacionales. Chen pudo proponer un modelo que era superior al modelo de navegación y era más aplicable al "mundo real" que el modelo relacional propuesto por Codd.