Investigacion Sobre MySQL Server
-
Upload
juancervantes -
Category
Documents
-
view
29 -
download
0
description
Transcript of Investigacion Sobre MySQL Server
-
1
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
Investigacin de MySQL Server
-
2
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).
III. HISTORIA DE MYSQL SERVER [2]
Empezamos con la intencin de utilizar
el mSQL sistema de base de datos para conectar a
nuestras tablas utilizando nuestras propias rpidas
rutinas de bajo nivel. Sin embargo, despus de
pruebas, se lleg a la conclusin que mSQL no era
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 co-
fundador 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
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
en octubre de 2005. El estado de disponibilidad
general " significa que el futuro desarrollo 5.1 y 5.0
se limita slo a correcciones de errores. Las
caractersticas ms solicitadas y las versiones en
que fueron implementados se resumen en la tabla
1.1.
Caracterstica Serie MySQL
Uniones 4.0
Subconsultas 4.1
R-rboles
4.1 (para el MyISAM motor
de almacenamiento)
Procedimientos almacenados y funciones 5.0
Vistas 5.0
Cursores 5.0
Transacciones XA 5.0
Los disparadores 5.0 y 5.1
Planificador de eventos 5.1
Particiones 5.1
API motor de almacenamiento conectables 5.1
API Plugin 5.1
InnoDB Plugin 5.1
La replicacin basada en filas 5.1
Tablas de registro del servidor 5.1
Tabla 1.1 Caractersticas agregadas en las ltimas
versiones de MySQL
-
3
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
capas con mdulos independientes.
Diseado para ser totalmente multi-hilo
usando hilos del ncleo, para usar
fcilmente mltiples CPUs si estn
disponibles.
Proporciona sistemas de almacenamientos
transaccionales y no transaccionales.
Utiliza tablas muy rpidas disco B-tree con
compresin de ndice.
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.
Implementa tablas hash en memoria, que se
utilizan como tablas temporales.
b) Seguridad
Un sistema de privilegios y contraseas que
es muy flexible y seguro, y que permita la
verificacin basada en el host.
La seguridad de contrasea de cifrado de
todo el trfico de la contrasea cuando se
conecta a un servidor.
c) Escalabilidad y lmites
Ayudas a las grandes bases de
datos. Usamos MySQL Server con bases de
datos 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
sockets TCP / IP en cualquier plataforma.
En los sistemas Windows de la familia NT
(NT, 2000, XP, 2003 o Vista), los clientes
pueden conectarse a 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
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 y Tcl estn disponibles,
permitiendo a los clientes de MySQL para ser
escritos en muchos idiomas.
El Conector ODBC (MyODBC) con la
interfaz MySQL proporciona soporte para
programas clientes que usen conexiones ODBC.
Por ejemplo, puede usar MS Access para
conectarse a su servidor MySQL.
La interfaz de Conector / J MySQL
proporciona soporte para clientes Java que usen
-
4
conexiones JDBC [6]. Los clientes pueden
ejecutarse en Windows o Unix. Conector / J
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
inicia el servidor MySQL. Para ver un ejemplo
de ordenacin muy avanzada, consulte el cdigo
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 pblicos. Esto incluye tanto los
programas de lnea de comandos 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
comandos muy rpida para efectuar estas
operaciones en MyISAM.
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 Arquitectura
Oracle Linux 7 x86_64
Oracle Linux 6 x86, x86_64
Oracle Linux 5 x86, x86_64
Oracle Linux 4 x86, x86_64, Intel
IA64
Solaris 11 SPARC_64, x86_64
Solaris 10 (Update 8+) SPARC_64, x86_64,
x86
Solaris 10 SPARC_32
Solaris 9 SPARC_32,
SPARC_64, x86_64,
x86
Solaris 8 SPARC_32,
SPARC_64, x86_64,
x86
Red Hat Enterprise
Linux 7 / CentOS 7
x86_64
Red Hat Enterprise
Linux 6 / CentOS 6
x86, x86_64
Red Hat Enterprise
Linux 5 / CentOS 5
x86, x86_64
Red Hat Enterprise
Linux 4
x86, x86_64, Intel
IA64
Red Hat Enterprise
Linux 3
x86, x86_64, Intel
IA64
Ubuntu 14.04 LTS x86, x86_64
Ubuntu 12.04 LTS x86, x86_64
SUSE Enterprise Linux
12
x86, x86_64
SUSE Enterprise Linux
11
x86, x86_64
SUSE Enterprise Linux
10
x86, x86_64, Intel
IA64
SUSE Enterprise Linux
9
x86, x86_64, Intel
IA64
Debian GNU/Linux 6 x86, x86_64
-
5
Debian GNU/Linux 5 x86, x86_64
Debian GNU/Linux 4 x86, x86_64
Microsoft Windows 8 x86, x86_64
Microsoft Windows
2012 Server
x86_64
Microsoft Windows 7 x86, x86_64
Microsoft Windows
2008 Server
x86_64
Microsoft Windows
Vista
x86, x86_64
Microsoft Windows
2003 Server
x86, x86_64
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.
-
6
GLOSARIO
ISAM: SIGNIFICA MTODO INDEXADO DE ACCESO SECUENCIAL, UN MTODO PARA LA
INDEXACIN DE DATOS PARA UNA RPIDA
RECUPERACIN.
API: ES UN CONJUNTO DE RUTINAS, PROTOCOLOS Y HERRAMIENTAS PARA
CONSTRUIR APLICACIONES DE SOFTWARE.
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: 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 ES UN ESTNDAR DE LENGUAJE DE
PROGRAMACIN MIDDLEWARE API PARA EL
ACCESO DE SISTEMAS DE GESTIN DE BASES
DE DATOS (DBMS).
MYSQLCHECK: ES UNA HERRAMIENTA DE MANTENIMIENTO QUE PERMITE COMPROBAR,
REPARAR, ANALIZAR Y OPTIMIZAR VARIAS
TABLAS A LA VEZ DESDE LA LNEA DE
COMANDOS.
MYISAMCHK: UTILIDAD QUE OBTIENE
INFORMACIN SOBRE SUS TABLAS DE LA BASE
DE DATOS O CONTROLES, REPARACIONES O
LOS OPTIMIZA.
MYISAM: ERA EL MOTOR DE ALMACENAMIENTO POR DEFECTO PARA LOS SISTEMAS MYSQL DE GESTIN DE BASE DE DATOS RELACIONAL.
MYSQLDUMP: ES UNA UTILIDAD QUE REALIZA COPIAS DE SEGURIDAD LGICAS ,
PRODUCIENDO UN CONJUNTO DE SENTENCIAS
SQL QUE SE PUEDEN EJECUTAR PARA
REPRODUCIR LOS OBJETOS DE ESQUEMA
ORIGINALES, DATOS DE LA TABLA, O AMBOS.
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: ES UN COMPONENTE DE SOFTWARE QUE AADE UNA CARACTERSTICA
ESPECFICA DE UNA YA
EXISTENTE APLICACIN DE SOFTWARE.
GNU: SISTEMA LIBRE EN DESARROLLO.
TABLAS 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.
JDBC: 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.
-
7
REFERENCIAS
[1] Michael J. Miller Jr., Paul DuBois, (2015). What is MySQL? Consultado: 28 de abril de
2014, de MySQL Sitio web:
http://dev.mysql.com/doc/refman/5.7/en/what-
is-mysql.html.
[2] Paul DuBois. (2014). MySQL Development History. 16 de abril de 2014, de MySQL Sitio
web:
http://dev.mysql.com/doc/refman/5.0/en/develo
pment-history.html
[3] Paul DuBois & Kim Aldale. (2013). Upgrading MySQL. Consultado: abril 28 de 2014, de
MySQL Sitio web:
http://dev.mysql.com/doc/refman/5.0/en/upgradi
ng.html
[4] Kim Aldale & Paul DuBois. (2013). The Main
Features of MySQL. abril 28 de 2015, de
MySQL Sitio web:
http://dev.mysql.com/doc/refman/5.7/en/what-
is-mysql.html
[5] Paul DuBois. (2014). Supported Platforms: MySQL Database. Consultado: 26 de abril
2014, de MySQL Sitio web:
http://www.mysql.com/support/supportedplatfor
ms/database.html
[6] Java SE Technologies. (2015). ava SE
Technologies - Database. Consultado Mayo 1 de
2015, de ORACLE Sitio web:
http://www.oracle.com/technetwork/java/javase/
jdbc/index.html