Investigacion Sobre MySQL Server

download Investigacion Sobre MySQL Server

of 7

description

Es una breve investigacion acerca de Mysql server asi como las distintas versiones o plataformas

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