1
Investigacin de MySQL Server
En este artculo abordaremos el sistema de
administracin de bases de datos MySQL Server,
trataremos temas de suma importancia para
entender este sistema.
Nos introduciremos en el mundo de MySQL
Server, qu es? Cmo funciona? Cul es su
historia?
Cules
son
las
principales
funcionalidades y caractersticas que posee dicho
sistema?, abordaremos estos temas de una manera
sencilla y entenderemos cuales son las ventajas de
utilizarlo.
MySQL Server actualmente es uno de los
sistemas de administracin de bases de datos ms
utilizados en el mundo y esto se debe a su gran
potencial de caractersticas y estabilidad adems
uno de sus puntos clave es el hecho de ser un
programa GNU.
Palabras clave- base de datos, querys,
administrador, campos, celdas, server, MySQL,
algoritmo, sistemas, ISAM, API, tablas, mSQL,
open Source.
I. INTRODUCCIN
Este trabajo de investigacin va orientado y
tratara de explicar cada pequeo detalle del sistema
de gestin de base de datos MySQL, para aquellos
que ya conocen el sistema se intentara que
comprendan un poco mejor dicho sistema, adems
de conocer su historia y que fue lo que le dio origen.
Se trataran temas importantes de dicho sistema
como:
Funcionamiento de MySQL Server
En que plataformas funciona
Que sistemas son ms apropiados para la
Estabilidad de MySQL.
Como se Programan y en que lenguaje las
bases de datos.
Como se consultan las bases de datos.
Que requerimientos mnimos se necesitan
para estos sistemas.
Intentando explicar de manera muy clara y
concreta todos y cada uno de los puntos anteriores.
II. MARCO TERICO
QUE ES MYSQL SERVER
MySQL es un sistema de gestin de base de datos.
Una base de datos es una coleccin estructurada de
datos. Puede ser cualquier cosa, desde una simple
lista de la compra a una galera de imgenes o las
grandes cantidades de informacin en una red
corporativa. Para agregar, el acceso y proceso de los
datos almacenados en una base de datos, se necesita
un sistema de gestin de base de datos como
MySQL Server [1].
Bases de datos MySQL son relacionales.
Almacena los datos Una base de datos
relacional en tablas separadas en lugar de
poner todos los datos en un gran
almacn. Las estructuras de bases de datos
estn organizados en archivos fsicos
optimizados para la velocidad. El modelo
lgico, con objetos tales como bases de
datos, tablas, vistas, filas y columnas, ofrece
un entorno de programacin flexible.
Software MySQL es Open Source significa
que es posible que cualquiera pueda usar y
modificar el software (si cuenta con los
conocimientos
necesarios).
Cualquier
persona puede descargar el software
MySQL desde internet y usarlo sin pagar
nada.
MySQL Server trabaja en cliente / servidor
o sistemas embebidos. El software de base
de datos MySQL es un sistema cliente /
servidor que consiste en un servidor SQL
multi-hilo que soporta diferentes programas,
clientes
diferentes
y
bibliotecas,
herramientas administrativas, y una amplia
gama de interfaces de programacin de
aplicaciones (API).
ciudad en Arusha, Tanzania, cerca del pas de
origen de Ambrose, Uganda.
IV. VERSIONES DE MYSQL SERVER [3]
La serie en produccin actual es de MySQL
5.1, la cual fue declarada estable para su uso en
produccin a partir de MySQL 5.1.30, lanzado en
noviembre de 2008. La serie en produccin anterior
fue MySQL 5.0, la cual fue declarada estable para
su uso en produccin desde MySQL 5.0.15, lanzado
III. HISTORIA DE MYSQL SERVER [2]
en octubre de 2005. El estado de disponibilidad
Empezamos con la intencin de utilizar
general " significa que el futuro desarrollo 5.1 y 5.0
el mSQL sistema de base de datos para conectar a
se limita slo a correcciones de errores. Las
nuestras tablas utilizando nuestras propias rpidas
caractersticas ms solicitadas y las versiones en
rutinas de bajo nivel. Sin embargo, despus de
que fueron implementados se resumen en la tabla
pruebas, se lleg a la conclusin que mSQL no era
1.1.
lo suficientemente rpido o lo suficientemente
flexible para las necesidades. Esto dio lugar a una
nueva interfaz SQL a la base de datos pero casi con
la misma interfaz como mSQL.
Esta API fue diseada para permitir cdigo
de terceras partes que fue escrito para utilizarlo con
mSQL para ser portado fcilmente para su uso con
MySQL.
MySQL lleva el nombre de la hija del cofundador Monty Widenius, My. El nombre del
delfn de MySQL (nuestro logo) es " Sakila ", que
fue elegido de una lista enorme de nombres
sugeridos
por los
usuarios
en " Nombre del
Delfn " concurso. El nombre ganador fue enviado
por Ambrose Twebaze, un desarrollador de
software Open Source de Swaziland, frica. Segn
Ambrose, el nombre femenino Sakila tiene sus
races
en
SiSwate,
la
lengua
local
de
Swazilandia. Sakila es tambin el nombre de una
Caracterstica
Uniones
Subconsultas
R-rboles
Procedimientos
almacenados y funciones
Vistas
Cursores
Transacciones XA
Los disparadores
Planificador de eventos
Particiones
API motor de
almacenamiento
conectables
API Plugin
InnoDB Plugin
La replicacin basada en
filas
Tablas de registro del
servidor
Serie MySQL
4.0
4.1
4.1 (para el MyISAM motor
de almacenamiento)
5.0
5.0
5.0
5.0
5.0 y 5.1
5.1
5.1
5.1
5.1
5.1
5.1
5.1
Tabla 1.1 Caractersticas agregadas en las ltimas
versiones de MySQL
V. PRINCIPALES CARACTERSTICAS DE
MYSQL [4]
En esta seccin del artculo hablaremos de las
caractersticas y para hacerlo ms sencillo lo
dividiremos en cuatro importantes segmentos y los
describiremos anotando los principales puntos en
cada uno.
a)
Internos y Portabilidad
Escrito en C y C ++.
Probado con una amplia gama de diferentes
compiladores.
Funciona en muchas plataformas diferentes.
Utiliza diseo de servidor de mltiples
Diseado para ser totalmente multi-hilo
usando
hilos
fcilmente
del
mltiples
ncleo,
CPUs
para
usar
si
estn
Proporciona sistemas de almacenamientos
transaccionales y no transaccionales.
datos
Diseado para que sea relativamente fcil
aadir otros motores de almacenamiento.
Esto es til si desea proporcionar una
interfaz SQL para una base de datos interna.
Utiliza un sistema de asignacin de
memoria basada en hilo muy rpido.
las
grandes
bases
de
que
contienen
50
millones
de
registros. Tambien se ha sabido de los usuarios
que usan MySQL Server con 200.000 mesas y
unos 5000 millones filas.
d)
Conectividad
Los
clientes pueden conectarse al servidor
MySQL usando varios protocolos:
Los
clientes
pueden
conectar
usando
Implementa tablas hash en memoria, que se
utilizan como tablas temporales.
En los sistemas Windows de la familia NT
(NT, 2000, XP, 2003 o Vista), los clientes
pueden
conectarse
travs
de
canalizaciones con nombre si el servidor se
inicia con la --enable-named-pipe opcin.
En los sistemas Unix, los clientes pueden
conectarse a travs de ficheros socket de
Utiliza tablas muy rpidas disco B-tree con
compresin de ndice.
Ayudas
datos. Usamos MySQL Server con bases de
disponibles.
Escalabilidad y lmites
sockets TCP / IP en cualquier plataforma.
capas con mdulos independientes.
c)
dominio Unix.
Programas cliente MySQL pueden estar
escritos en muchos idiomas. Una biblioteca de
cliente escrito en C est disponible para los
clientes escritos en C o C ++, o para cualquier
lenguaje que ofrece enlaces C.
APIs para C, C ++, Eiffel, Java, Perl, PHP,
Python,
Ruby
Tcl
estn
disponibles,
permitiendo a los clientes de MySQL para ser
escritos en muchos idiomas.
b)
Seguridad
El Conector ODBC (MyODBC)
con la
Un sistema de privilegios y contraseas que
interfaz MySQL proporciona soporte para
es muy flexible y seguro, y que permita la
programas clientes que usen conexiones ODBC.
verificacin basada en el host.
Por ejemplo, puede usar MS Access para
La seguridad de contrasea de cifrado de
conectarse a su servidor MySQL.
todo el trfico de la contrasea cuando se
conecta a un servidor.
proporciona soporte para clientes Java que usen
La interfaz de Conector / J MySQL
conexiones
JDBC
[6].
Los
clientes pueden
ejecutarse en Windows o Unix. Conector / J
comandos muy rpida para efectuar estas
operaciones en MyISAM.
fuente est disponible.
e)
Localizacin
El servidor puede proporcionar mensajes de
error a los clientes en muchos idiomas.
Soporte completo para distintos conjuntos de
caracteres, incluyendo latin1, alemn, big5, ujis,
y
ms. Por
ejemplo,
los
caracteres
escandinavos " , " " y " " estn permitidos
en los nombres de tablas y columnas.
Todos los datos se guardan en el conjunto de
caracteres elegido.
Clasificacin y comparaciones se hace de
acuerdo con el conjunto elegido caracteres y
colacin. Es posible cambiar esto cuando se
VI. PLATAFORMAS QUE SOPORTAN MYSQL
SERVER [5]
En la tabla 1.2 se muestran las diferentes
plataformas que son compatibles con MySQL
server as como sus distintas arquitecturas
correspondientes de cada sistema operativo.
Plataforma
Oracle Linux 7
Oracle Linux 6
Oracle Linux 5
Oracle Linux 4
Solaris 11
Solaris 10 (Update 8+)
Solaris 10
Solaris 9
inicia el servidor MySQL. Para ver un ejemplo
de ordenacin muy avanzada, consulte el cdigo
Solaris 8
Checo de ordenacin. MySQL Server soporta
diferentes conjuntos de caracteres que se pueden
especificar en tiempo de compilacin y tiempo
de ejecucin.
f)
Clientes y herramientas
MySQL incluye varios programas de cliente y de
servicios
programas
pblicos. Esto
de
lnea
incluye
de
tanto
comandos
los
tales
como mysqldump y mysqladmin, y programas
grficos tales como MySQL Workbench.
MySQL Server ha incorporado soporte para
comandos SQL para comprobar, optimizar y
reparar
tablas. Estas
declaraciones
estn
disponibles desde la lnea de comandos a travs
de
la mysqlcheck cliente. MySQL
tambin
incluye myisamchk, una utilidad de lnea de
Red Hat Enterprise
Linux 7 / CentOS 7
Red Hat Enterprise
Linux 6 / CentOS 6
Red Hat Enterprise
Linux 5 / CentOS 5
Red Hat Enterprise
Linux 4
Red Hat Enterprise
Linux 3
Ubuntu 14.04 LTS
Ubuntu 12.04 LTS
SUSE Enterprise Linux
12
SUSE Enterprise Linux
11
SUSE Enterprise Linux
10
SUSE Enterprise Linux
9
Debian GNU/Linux 6
Arquitectura
x86_64
x86, x86_64
x86, x86_64
x86, x86_64, Intel
IA64
SPARC_64, x86_64
SPARC_64, x86_64,
x86
SPARC_32
SPARC_32,
SPARC_64, x86_64,
x86
SPARC_32,
SPARC_64, x86_64,
x86
x86_64
x86, x86_64
x86, x86_64
x86, x86_64, Intel
IA64
x86, x86_64, Intel
IA64
x86, x86_64
x86, x86_64
x86, x86_64
x86, x86_64
x86, x86_64, Intel
IA64
x86, x86_64, Intel
IA64
x86, x86_64
Debian GNU/Linux 5
x86, x86_64
Debian GNU/Linux 4
x86, x86_64
Microsoft Windows 8
x86, x86_64
Microsoft Windows
x86_64
2012 Server
Microsoft Windows 7
x86, x86_64
Microsoft Windows
x86_64
2008 Server
Microsoft Windows
x86, x86_64
Vista
Microsoft Windows
x86, x86_64
2003 Server
Microsoft Windows XP x86, x86_64
IBM AIX 5.3
IBM Power5_64
Apple OS X v10.10
x86_64
Apple OS X v10.9
x86_64
Apple OS X v10.8
x86_64
FreeBSD 9
x86, x86_64
FreeBSD 8
x86, x86_64
FreeBSD 7
x86, x86_64
FreeBSD 6
x86, x86_64
Tabla 1.2 Plataformas y arquitecturas compatibles
con MySQL Server
VI.
CONCLUSIONES
Despus de esta investigacin realizada podemos
concluir que el Sistema de gestin de base de datos
MySQL server es uno de los ms utilizados en el
mundo casi en cualquier mbito para la gestin de
las estructuras de datos o comnmente conocidas
como bases de datos, esto es debido a su
universalidad en idiomas y su programacin
estructurada, como ya vimos esto se debe a su
arquitectura abierta (open Source) ya que
programadores de todo el mundo con los
conocimientos en este sistema pueden ayudar a
mejorar sus funciones y rendimiento as como
resolver los problemas que se encuentren a lo largo
de su uso haciendo .
La muy amplia gama de funciones y
caractersticas que nos proporciona MySQL Server
como su conectividad, su compatibilidad y
seguridad hacen de este sistema uno de los ms
fiables para la gestin de datos, desde empresas o
negocios pequeos, hasta empresas grandes con
gran flujo de informacin que almacenar, aunque
cabe mencionar que a pesar de ser open Source
tambin cuenta con un soporte para todos aquellos
que quieren contratarlo en su mayora empresas
grandes que quieren una garanta de su constante
funcionamiento y la garanta de resguardo de sus
informacin, este servicio de soporte si tiene costo
para los usuarios pero es importante mencionar que
el costo no es por el uso del sistema de MySQL sino
por el servicio de soporte que se les brinda.
El sistema MySQL Server es una opcin muy
llamativa para todos aquellos que quieren
administrar una base de datos ya que para bases
pequeas necesita muy pocos requisitos para
funcionar as como su versatilidad en la cantidad de
sistemas operativos con los que es compatible como
ya lo mencionamos en este artculo y sus
respectivas arquitecturas de funcionamiento.
SQL
GLOSARIO
QUE SE PUEDEN EJECUTAR PARA
REPRODUCIR LOS OBJETOS DE ESQUEMA
ORIGINALES, DATOS DE LA TABLA, O AMBOS.
ISAM:
SIGNIFICA MTODO INDEXADO DE
ACCESO SECUENCIAL, UN MTODO PARA LA
INDEXACIN DE DATOS PARA UNA RPIDA
RECUPERACIN.
API:
MSQL: MINI SQL ES UN PESO LIGERO
HISTRICAMENTE IMPORTANTE SISTEMA DE
GESTIN DE BASE DE DATOS DE HUGHES
TECNOLOGAS. DESARROLLADO POR PRIMERA
VEZ EN 1994
PORTABILIDAD:
MYSQLADMIN: ES UN CLIENTE PARA
REALIZAR
OPERACIONES
ADMINISTRATIVAS. SE PUEDE UTILIZAR PARA
COMPROBAR EL ESTADO DE CONFIGURACIN
Y ACTUAL DEL SERVIDOR, CREAR Y BORRAR
BASES DE DATOS, Y MS.
PLUGIN:
GNU: SISTEMA LIBRE EN DESARROLLO.
TABLAS
JDBC:
ES UN CONJUNTO DE RUTINAS,
PROTOCOLOS
Y
HERRAMIENTAS
PARA
CONSTRUIR APLICACIONES DE SOFTWARE.
SE
DEFINE
COMO
LA
CARACTERSTICA
QUE
POSEE
UN SOFTWARE PARA EJECUTARSE EN
DIFERENTES PLATAFORMAS,
EL CDIGO
FUENTE DEL
SOFTWARE
ES
CAPAZ
DE
REUTILIZARSE EN VEZ DE CREARSE UN NUEVO
CDIGO CUANDO EL SOFTWARE PASA DE UNA
PLATAFORMA A OTRA.
ODBC: OPEN DATABASE CONNECTIVITY
MYSQLCHECK: ES UNA HERRAMIENTA DE
MANTENIMIENTO QUE PERMITE COMPROBAR,
REPARAR, ANALIZAR Y OPTIMIZAR VARIAS
TABLAS A LA VEZ DESDE LA LNEA DE
COMANDOS.
MYISAMCHK:
MYISAM:
MYSQLDUMP: ES UNA UTILIDAD QUE
REALIZA COPIAS DE SEGURIDAD LGICAS ,
PRODUCIENDO UN CONJUNTO DE SENTENCIAS
ES
UN
ESTNDAR
DE LENGUAJE
DE
PROGRAMACIN MIDDLEWARE API PARA EL
ACCESO DE SISTEMAS DE GESTIN DE BASES
DE DATOS (DBMS).
UTILIDAD QUE OBTIENE
INFORMACIN SOBRE SUS TABLAS DE LA BASE
DE DATOS O CONTROLES, REPARACIONES O
LOS OPTIMIZA.
ERA
EL MOTOR
DE
ALMACENAMIENTO
POR
DEFECTO PARA
LOS SISTEMAS MYSQL DE GESTIN DE BASE DE
DATOS RELACIONAL.
ES UN COMPONENTE DE SOFTWARE
QUE
AADE
UNA
CARACTERSTICA
ESPECFICA
DE
UNA
YA
EXISTENTE APLICACIN DE SOFTWARE.
HASH: RECIBEN EL NOMBRE
DE DICCIONARIOS PORQUE SON CONJUNTOS
DE PARES CLAVE-VALOR DONDE LA CLAVE ES
EL RESULTADO DE APLICAR LA FUNCIN
HASH SOBRE EL VALOR. SE DICE QUE LA
BSQUEDA SE REALIZA POR CLAVE PARA
RECUPERAR UN VALOR.
ES
UNA
TECNOLOGA
DE
CONECTIVIDAD DE BASE DE DATOS JAVA.
ESTA
TECNOLOGA
ES
UNA API PARA
EL LENGUAJE DE PROGRAMACIN JAVA QUE
DEFINE COMO UN CLIENTE PUEDE ACCEDER A
UNA BASE DE DATOS. SE PROPORCIONA
MTODOS PARA CONSULTAR Y ACTUALIZAR
DATOS EN UNA BASE DE DATOS.
REFERENCIAS
[1] Michael J. Miller Jr., Paul DuBois, (2015).
What is MySQL? Consultado: 28 de abril de
2014,
de
MySQL
Sitio
web:
[Link]
[2] Paul DuBois. (2014). MySQL Development
History. 16 de abril de 2014, de MySQL Sitio
web:
[Link]
[Link]
[3] Paul DuBois & Kim Aldale. (2013). Upgrading
MySQL. Consultado: abril 28 de 2014, de
MySQL Sitio web:
[Link]
[Link]
[4] Kim Aldale & Paul DuBois. (2013). The Main
Features of MySQL. abril 28 de 2015, de
MySQL Sitio web:
[Link]
[5] Paul DuBois. (2014). Supported Platforms:
MySQL Database. Consultado: 26 de abril
2014,
de
MySQL
Sitio
web:
[Link]
ms/[Link]
[6] Java SE Technologies. (2015). ava SE
Technologies - Database. Consultado Mayo 1 de
2015, de ORACLE Sitio web:
[Link]
jdbc/[Link]