1) MySQL es un sistema de gestión de bases de datos relacional de código abierto ampliamente utilizado, especialmente para aplicaciones web. Fue desarrollado inicialmente por una empresa sueca y luego adquirida por Oracle.
2) MariaDB es un fork de MySQL creado para mantenerlo como software libre luego de ser adquirido por Oracle. MariaDB ofrece mejoras en rendimiento y nuevas funcionalidades respecto a MySQL.
3) phpMyAdmin es una herramienta web popular para administrar bases de datos MySQL de forma gráfica a través de una interfaz amigable
FE DE ERRATAS (PERDON POR EL ERROR INVOLUNTARIO, YA QUE ES BASE DE DATOS, EN LUGAR DE BASE DE BATOS) En éste trabajo se explica qué es el concepto de SGBD (Sistema Gestor de Bases de Datos) MySQL
FE DE ERRATAS (PERDON POR EL ERROR INVOLUNTARIO, YA QUE ES BASE DE DATOS, EN LUGAR DE BASE DE BATOS) En éste trabajo se explica qué es el concepto de SGBD (Sistema Gestor de Bases de Datos) MySQL
Introducción a las bases de datos NoSQL
Concepto y campos relacionados
Principales características
Arquitectura de las bases de datos NoSQL
Taxonomía de soluciones NoSQL
Empresas que usan bases de datos NoSQL
MongoDB: una BBDD NoSQL orientada a Documentos
Introducción: características y arquitectura
Instalación sobre diferentes sistemas operativos
Utilidades de mongoDB: mongo, mongostat, mongotop, etc.
Características principales:
Consultas Ad hoc
Indexación
Replicación
Balanceo de carga
Almacenamiento de archivos
Agregación
Programación en MongoDB
Ejecución de JavaScript del lado del servidor
Programación de MongoDB desde Java y Python
Desarrollo de una aplicación avanzada con MongoDB
Conclusiones
Otras alternativas destacables: CouchDB
Aplicabilidad a mi empresa
Optimización de aplicaciones web con base de datos NoSQL In-MemoryGonzalo Chacaltana
Presentación que relata las distintas técnicas para optimizar una aplicación web. El objetivo del documento consiste en introducir al participante en los conceptos sobre escalabilidad horizontal, instalar y trabajar con Redis como base de datos NoSQL In-Memory y aplicar un ejemplo de conectarnos con Redis desde una aplicación PHP.
Introducción a las bases de datos NoSQL
Concepto y campos relacionados
Principales características
Arquitectura de las bases de datos NoSQL
Taxonomía de soluciones NoSQL
Empresas que usan bases de datos NoSQL
MongoDB: una BBDD NoSQL orientada a Documentos
Introducción: características y arquitectura
Instalación sobre diferentes sistemas operativos
Utilidades de mongoDB: mongo, mongostat, mongotop, etc.
Características principales:
Consultas Ad hoc
Indexación
Replicación
Balanceo de carga
Almacenamiento de archivos
Agregación
Programación en MongoDB
Ejecución de JavaScript del lado del servidor
Programación de MongoDB desde Java y Python
Desarrollo de una aplicación avanzada con MongoDB
Conclusiones
Otras alternativas destacables: CouchDB
Aplicabilidad a mi empresa
Optimización de aplicaciones web con base de datos NoSQL In-MemoryGonzalo Chacaltana
Presentación que relata las distintas técnicas para optimizar una aplicación web. El objetivo del documento consiste en introducir al participante en los conceptos sobre escalabilidad horizontal, instalar y trabajar con Redis como base de datos NoSQL In-Memory y aplicar un ejemplo de conectarnos con Redis desde una aplicación PHP.
Instrucciones del procedimiento para la oferta y la gestión conjunta del proceso de admisión a los centros públicos de primer ciclo de educación infantil de Pamplona para el curso 2024-2025.
2. HISTORIA
• MySQL es un sistema de gestión de bases de datos relacional
desarrollado bajo licencia dual: Licencia pública general/Licencia
comercial por Oracle Corporation y está considerada como la base
datos de código abierto más popular del mundo,12 y una de las más
populares en general junto a Oracle y Microsoft SQL Server, sobre
todo para entornos de desarrollo web.
• MySQL fue inicialmente desarrollado por MySQL AB (empresa
fundada por David Axmark, Allan Larsson y Michael Widenius).
MySQL AB fue adquirida por Sun Microsystems en 2008, y ésta a su
vez fue comprada por Oracle Corporation en 2010, la cual ya era
dueña desde 2005 de Innobase Oy, empresa finlandesa
desarrolladora del motor InnoDB para MySQL.
Última versión estable 5.7.21 (info)
15 de enero de 2018 (2 meses y 1 día)
1
4. ¿QUE ES?
• MySQL es un sistema de gestión de base de datos relacional (RDBMS) de
código abierto, basado en lenguaje de consulta estructurado (SQL)
(SQL (Structured Query Language) es un lenguaje de programación estándar
e interactivo para la obtención de información desde una base de datos y
para actualizarla.).
• MySQL se ejecuta en prácticamente todas las plataformas, incluyendo
Linux, UNIX y Windows. A pesar de que se puede utilizar en una amplia
gama de aplicaciones, MySQL se asocia más con las aplicaciones basadas
en la web y la publicación en línea y es un componente importante de una
pila empresarial de código abierto llamado LAMP. LAMP es una plataforma
de desarrollo web que utiliza Linux como sistema operativo, Apache como
servidor web, MySQL como sistema de gestión de base de datos relacional
y PHP como lenguaje de programación orientado a objetos (a veces, Perl o
Python se utiliza en lugar de PHP).
2
6. CARACTERISTICAS
• Usa GNU Automake, Autoconf, y Libtool para portabilidad
• Uso de multihilos mediante hilos del kernel.
• Usa tablas en disco b-tree para búsquedas rápidas con compresión de índice
• Tablas hash en memoria temporales
• El código MySQL se prueba con Purify (un detector de memoria perdida comercial) así como con Valgrind, una herramienta GPL.
• Completo soporte para operadores y funciones en cláusulas select y where.
• Completo soporte para cláusulas group by y order by, soporte de funciones de agrupación
• Seguridad: ofrece un sistema de contraseñas y privilegios seguro mediante verificación basada en el host y el tráfico de
contraseñas está cifrado al conectarse a un servidor.
• Soporta gran cantidad de datos. MySQL Server tiene bases de datos de hasta 50 millones de registros.
• Se permiten hasta 64 índices por tabla (32 antes de MySQL 4.1.2). Cada índice puede consistir desde 1 hasta 16 columnas o partes
de columnas. El máximo ancho de límite son 1000 bytes (500 antes de MySQL 4.1.2).
• Los clientes se conectan al servidor MySQL usando sockets TCP/IP en cualquier plataforma. En sistemas Windows se pueden
conectar usando named pipes y en sistemas Unix usando ficheros socket Unix.
• En MySQL 5.0, los clientes y servidores Windows se pueden conectar usando memoria compartida.
• MySQL contiene su propio paquete de pruebas de rendimiento proporcionado con el código fuente de la distribución de MySQL.
3
11. PHPMYADMIN
• phpMyAdmin es una herramienta de software libre escrita en PHP ,
destinada a manejar la administración de MySQL a través de la
Web. phpMyAdmin es compatible con una amplia gama de
operaciones en MySQL y MariaDB. Las operaciones de uso frecuente
(administración de bases de datos, tablas, columnas, relaciones,
índices, usuarios, permisos, etc.) se pueden realizar a través de la
interfaz de usuario, mientras que usted todavía tiene la capacidad de
ejecutar directamente cualquier declaración de SQL.
7
12. Caracteristicas
• Interfaz web intuitiva
• Soporte para la mayoría de las características de MySQL:
• explorar y eliminar bases de datos, tablas, vistas, campos e índices
• crear, copiar, descartar, renombrar y alterar bases de datos, tablas, campos e índices
• servidor de mantenimiento, bases de datos y tablas, con propuestas sobre la configuración del servidor
• ejecutar, editar y marcar cualquier declaración SQL , incluso consultas por lotes
• Administrar cuentas de usuario y privilegios de MySQL
• Administrar procedimientos almacenados y disparadores
• Importar datos de CSV y SQL
• Exporte datos a varios formatos: CSV , SQL , XML , PDF , ISO / IEC 26300 - Textos y hojas de cálculo de
OpenDocument, Word , L A T E X y otros
• Administrando múltiples servidores
• Creación de gráficos de su diseño de base de datos en varios formatos
• Crear consultas complejas usando Query-by-example (QBE)
• Búsqueda global en una base de datos o un subconjunto de ella
• Transformar datos almacenados en cualquier formato usando un conjunto de funciones predefinidas,
como mostrar datos BLOB como imagen o enlace de descarga
• Y mucho más...
7
15. MYSQL EN LINUX
• Cuando empezamos en el mundo de la programación y más, cuando
tratamos la programación web, es imposible que no acabemos
utilizando phpMyAdmin o alguna herramienta similar, que nos
permita gestionar nuestras bases de datos a golpe de click. No
obstante, en algunos casos, es posible que no podamos usar
phpMyAdmin o que simplemente no sea suficientemente potente.
• Por ello, vamos a ver cuál sería una de las vías más profesionales: La
terminal MySQL.
8
16. • Pero no sólo se trata de una terminal donde mandar comandos SQL
básicos, sino que también podemos realizar todas las operaciones
que SQL permita, por ejemplo:
• Crear nuevos usuarios (y asignarles una contraseña).
• Limitar los permisos de los usuarios (quizás que sólo puedan hacer
SELECT a una tabla de una base de datos y no al resto).
• Limitar cuantas queries al día puede hacer un usuario en concreto.
• Hacer copias de seguridad de una base de datos.
8
20. MARIADB VS MYSQL
• MySQL ha sido durante muchos años, y de hecho sigue siendo, uno
de los sistemas de bases de datos más populares y utilizados en el
mundo del hosting, aunque hace tiempo apareció un hermano suyo
dispuesto quitarle su lugar. MariaDB, al igual que MySQL, es un
servicio de manejo de bases de datos, cuenta con licencia GPL y de
hecho fue creado por el desarrollador de MySQL, el conocido Monty
Widenius, junto a un grupo de desarrolladores que decidieron formar
parte del proyecto en forma voluntaria.
11
21. ¿QUÉ ES MARIADB?
• Pues básicamente, y dicho sin rodeos, se trata de un reemplazo de MySQL
que no solo agrega un mayor rendimiento, sino también nuevas
funcionalidades. Es de hecho de un fork de MySQL, es decir, fue creado a
partir de él.
• La historia de MariaDB comienza un tiempo después de la compra de
MySQL por parte de ORACLE (a través de la compra de Sun Microsystems,
quien tenía en sus manos a MySQL AB, la firma creadora del sistema
homónimo).
• Ante el temor de que ORACLE pueda comenzar a distribuir MySQL bajo una
licencia de pago, y también ante el posible deterioro de la herramienta
ahora que no estaba en manos de la comunidad, fue que dio inicio la
creación de MariaDB. En pocas palabras, MariaDB nace con el propósito de
que quienes utilizan MySQL puedan seguir disfrutando de un software
distribuido libremente y de calidad.
11
22. • El avance y compromiso de MariaDB es tal que ya ha comenzado a ser
adoptado por defecto en algunas distribuciones de Linux muy
populares, por ejemplo CentOS 7.x, que ya lo trae preinstalado. Lo
mismo ocurre en el caso de Fedora, que desde hace varias versiones
viene con MariaDB instalado por defecto. Como si eso fuera poco,
también es utilizado por Google, Wikipedia o Mozilla, nombres más
que conocidos en el sector de Internet. Incluso cPanel lo provee a
través de su panel de control WHM, permitiendo hacer el cambio
rápidamente.
11
25. MOTORES
• Mientras que en MySQL se utilizan
MyISAM & InnoDB, en MariaDB nos
encontramos con dos reemplazos. El
primero de ellos es Aria, que viene a
reemplazar a MyISAM, mientras que el
restante es XtraDB, reemplazando por
supuesto a InnoDB. Aria fue creado a
partir de MyISAM, mientras que XtraDB
es un plugin de InnoDB. A su vez,
MariaDB incorpora otros dos motores:
PBXT y FederatedX.
13
26. TABLAS
• MariaDB incorpora nuevas tablas
a nivel del sistema, que ayudan en
las tareas de optimización de
bases de datos gracias al
almacenamiento de estadísticas
del servicio.
14
27. MEMORIA CACHE
• La memoria caché de un procesador, es un tipo de memoria volátil (como
la memoria RAM), pero muy rápida. Su función es almacenar instrucciones
y datos a los que el procesador debe acceder continuamente. ¿Cuál es su
finalidad? Pues que este tipo de datos sean de acceso instantáneo para
el procesador, ya que se trata de información relevante y que debe estar a
la mano de manera muy fluida. Los sistemas de hardware y software
llamados caché, almacenan este tipo de datos de manera duplicada y por
esta razón su acceso es tan veloz.
• En resumen, se trata de aquella cantidad de datos que permanece de
manera temporal en un sistema, lo que ayuda a que el rescate de datos se
haga de manera más eficiente y veloz. En palabras simples, la memoria
caché está diseñada para hacer más organizado el almacenamiento de
datos en un sistema, entiéndase computador, celular o cualquier otro
dispositivo que contenga un procesador.
15
28. VELOCIDAD
• El rendimiento de MariaDB se
encuentra por encima del
de MySQL. No estamos hablando
de una diferencia astronómica,
pero definitivamente es mejor. El
motor Aria en particular presenta
un rendimiento muy bueno frente a
MyISAM gracias a su caché en RAM
(MyISAM usa un caché de disco).
15
29. ¿VALE LA PENA USAR MARIADB EN LUGAR DE
MYSQL?
• Por supuesto que sí, que no quepan dudas. Las ventajas mencionadas
ya hablan por sí solas. Las mejoras de rendimiento que presenta
frente a MySQL hacen que la migración esté más que justificada. Y
como si eso fuera poco, recordemos que se trata de un proyecto
distribuido bajo licencia GPL. ¿A quién no le gusta el software gratuito
y de código abierto?
• MariaDB obviamente es compatible con muchos de los scripts más
populares utilizados en el mundo del hosting, por ejemplo
WordPress, Joomla, Drupal, Xenforo, VBulletin y muchísimos más.
16