Post on 19-Jan-2016
description
11
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
MySQL vs MySQL vs PostgreSQLPostgreSQL
Leyre Pérez Alba & Marta Balbás Leyre Pérez Alba & Marta Balbás Ostáriz Ostáriz
22
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
33
Introducción MySQL (I)Introducción MySQL (I)
Base de datos Relacional (SQL – lenguaje Base de datos Relacional (SQL – lenguaje declarativo).declarativo). - Como solución al lenguaje secuencial.- Como solución al lenguaje secuencial.
- Ventajas:- Ventajas:1.Búsquedas independientes de 1.Búsquedas independientes de la la representación de los datos.representación de los datos. 2.Facilidad de búsqueda y 2.Facilidad de búsqueda y
actualización. actualización.
44
Introducción MySQL (II)Introducción MySQL (II)
mSQL Surgió sobre la década de los 90 con mSQL Surgió sobre la década de los 90 con el fin de conectar tablas usando sus propias el fin de conectar tablas usando sus propias rutinas de bajo nivel(ISAM).rutinas de bajo nivel(ISAM).
Sencilla aplicación -> Solución viable para Sencilla aplicación -> Solución viable para lala administración de administración de datos.datos.Ofrece 2 tipos de licencia:Ofrece 2 tipos de licencia: - GPL.- GPL. - Comercial.- Comercial.
- Basic -> 495.00/Server/Year.- Basic -> 495.00/Server/Year.- Silver ->1595.00/Server/Year.- Silver ->1595.00/Server/Year.
(servicio técnico)(servicio técnico)
55
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
66
Introducción PostgreSQLIntroducción PostgreSQL
Objeto relacional (Clase,Herencia,Tipos y Objeto relacional (Clase,Herencia,Tipos y Funciones)Funciones) Arquitectura cliente/servidorArquitectura cliente/servidorPostgres (1986 Universidad de Berkeley)Postgres (1986 Universidad de Berkeley)Postgres95 (Jolly Chen y Andrew Yu) Postgres95 (Jolly Chen y Andrew Yu) PostregreSQLPostregreSQLLicencia BSDLicencia BSD
77
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
88
SeguridadSeguridad
MySQL MySQL Sistema de contraseñas y Sistema de contraseñas y
privilegios muy flexible y privilegios muy flexible y seguro seguro – Passwords encriptados.Passwords encriptados.– Listas de control de Listas de control de
acceso.acceso.– Verificación por host.Verificación por host.
Se pueden asignar permisos:Se pueden asignar permisos: 1.Por usuario.1.Por usuario. 2.Por servidor.2.Por servidor. 3.Por objeto.3.Por objeto.
Muy completo el control de Muy completo el control de acceso por objeto.acceso por objeto.
Soporte nativo del SSLSoporte nativo del SSL
PostgreSQLPostgreSQL Sistema de cuentasSistema de cuentas
– Control de acceso Control de acceso obligatorioobligatorio
– Lista de usuariosLista de usuarios– Usuarios y GruposUsuarios y Grupos
Superusuario (ficheros Superusuario (ficheros protegidos contra protegidos contra escritura)escritura)
Asignacion de permisosAsignacion de permisos– Por UsuarioPor Usuario– Por servidorPor servidor
Soporte nativo del SSLSoporte nativo del SSL
99
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
1010
IntegridadIntegridad
MySQL MySQL Integridad transaccional. ACID.Integridad transaccional. ACID. Integridad referencial Integridad referencial
(InnoDB).(InnoDB).– borrado y modificación en borrado y modificación en
cascada.cascada. Opción de utilizar las tablas Opción de utilizar las tablas
MyISAM.MyISAM. Control de Concurrencia por Control de Concurrencia por
Bloqueos:Bloqueos:– por tabla (MyISAM). Selects por tabla (MyISAM). Selects
sin bloqueo.sin bloqueo.– por página (BDB).por página (BDB).– por fila (InnoDB).por fila (InnoDB).
PostgreSQLPostgreSQL Integridad transaccional ACIDIntegridad transaccional ACID Integridad referencialIntegridad referencial
– Borrado en CascadaBorrado en Cascada– Modificado en CascadaModificado en Cascada– Claves ExtranjerasClaves Extranjeras
Completo soporte para Completo soporte para transaccionestransacciones
Control de ConcurrenciaControl de Concurrencia– Bloqueos por tablas Bloqueos por tablas – Bloqueos por filasBloqueos por filas– Modelo multiversiónModelo multiversión
1111
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
1212
RecuperaciónRecuperación
MySQL MySQL Automática ante fallos Automática ante fallos
(InnoDB).(InnoDB). Replicación síncrona de Replicación síncrona de
información.información. Replicación multi-hilo Replicación multi-hilo
( modo maestro-esclavo(s)).( modo maestro-esclavo(s)).
- Binary-Log. - Binary-Log.
- Le permite soportar gran - Le permite soportar gran cantidad de carga. cantidad de carga.
Agilizada por los índicesAgilizada por los índices..
PostgreSQPostgreSQLL
Write Ahead Logging (WAL) Write Ahead Logging (WAL) – Restaurar datos Restaurar datos
después de las caidasdespués de las caidas
Replicación AsincronaReplicación Asincrona– Master multi-slaveMaster multi-slave
1313
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
1414
OptimizaciónOptimización
MySQL MySQL Uso de índices. (debilidad).Uso de índices. (debilidad). Caché de consultas.Caché de consultas. Uniones.Uniones.
PostgreSPostgreSQLQL
Utiliza IndicesUtiliza Indices ExplainExplain Query plannerQuery planner Tiene sentencias para Tiene sentencias para
realizar uniones Uniones realizar uniones Uniones
1515
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
1616
Otras características a Otras características a destacar (I)destacar (I)MySQL MySQL Velocidad, Robustez, Velocidad, Robustez,
Estabilidad, y Facilidad de Estabilidad, y Facilidad de uso.uso.
Gran Escalabilidad.Gran Escalabilidad. Multiproceso.Multiproceso. Puede trabajar en distintas Puede trabajar en distintas
plataformas y en distintos plataformas y en distintos S.O .S.O .
Soporta muchos lenguajes de Soporta muchos lenguajes de programación.programación.
Posibilidad de conexión Posibilidad de conexión ODBC.ODBC.
SubconsultasSubconsultas Soporte de vistas (lectura y Soporte de vistas (lectura y
actualizables).actualizables).
PostgreSQLPostgreSQL
Uso de actualización de Uso de actualización de vistasvistas
Reglas y funcionesReglas y funciones Escalabilidad Escalabilidad Sistema de seguridad para Sistema de seguridad para
el catalogoel catalogo Interfaces nativas para:Interfaces nativas para:
– ODBC,JDBC,C,C++,PHP, ODBC,JDBC,C,C++,PHP, Perl, TCL,ECPG,Python Perl, TCL,ECPG,Python y Rubyy Ruby
Triggers más sofisticadosTriggers más sofisticados UnicodeUnicode SubconsultasSubconsultas HerenciaHerencia
1717
Otras características a Otras características a destacar (II)destacar (II)
MySQL MySQL Dispone de API`s en gran Dispone de API`s en gran
cantidad de cantidad de lenguajes(C,C+lenguajes(C,C++,Java,PHP,etc.).+,Java,PHP,etc.).
Gran portabilidad entre Gran portabilidad entre sistemas.sistemas.
Arquitectura basada en Arquitectura basada en módulos.módulos.
Triggers rudimentariosTriggers rudimentarios
PostgreSQLPostgreSQL Transaciones AnidadasTransaciones Anidadas Un API abiertaUn API abierta Procedimientos Procedimientos
AlmacenadosAlmacenados Lenguajes proceduralesLenguajes procedurales Respaldo en calienteRespaldo en caliente Extensiones para Extensiones para
MD5,XML y otras MD5,XML y otras funcionalidadesfuncionalidades
1818
Limites de las Bases de Limites de las Bases de DatosDatos
MySQL PostgreSQL
Tamaño máximo de la base de datos
Ilimitado Ilimitado
Tamaño máximo de un campo
Ilimitado Ilimitado
Cantidad máxima de registros
Ilimitado Ilimitado
Cantidad máxima de columnas en una tabla
3398 1600
Cantidad máxima de índices en una tabla
Ilimitado Ilimitado
1919
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
2020
Sistemas Gestores de Sistemas Gestores de Bases de DatosBases de Datos
1.1. Introducción MySQLIntroducción MySQL
2.2. Introducción PostgreSQLIntroducción PostgreSQL
3.3. Seguridad MySQL vs PostgreSQLSeguridad MySQL vs PostgreSQL
4.4. Integridad MySQL vs PostgreSQLIntegridad MySQL vs PostgreSQL
5.5. Recuperación MySQL vs PostgreSQLRecuperación MySQL vs PostgreSQL
6.6. Optimización MySQL vs PostgreSQLOptimización MySQL vs PostgreSQL
7.7. Otras características a destacar MySQL y Otras características a destacar MySQL y PostgreSQLPostgreSQL
8.8. Demostración de utilización básica de MySQL Demostración de utilización básica de MySQL y PostgreSQLy PostgreSQL
9.9. Bibliografia MySQL y PostgreSQLBibliografia MySQL y PostgreSQL
2121
MySQLMySQL
http://www.mysql.com página oficial.http://www.mysql.com página oficial. http://www.mysql-hispano.org página de MySQL castellano.http://www.mysql-hispano.org página de MySQL castellano. http://www.programacion.com/bbdd/articuloshttp://www.programacion.com/bbdd/articulos http://linux.bankhacker.com/software/MySQLhttp://linux.bankhacker.com/software/MySQL Otras.Otras.
2222
PostgreSQLPostgreSQL
httphttp://://www.postgresql.orgwww.postgresql.org// pagina oficial pagina oficial http://www.postgresql.cl/ pagina de Postgres en http://www.postgresql.cl/ pagina de Postgres en
españolespañol http://www.commandprompt.com/ppbook/ libro http://www.commandprompt.com/ppbook/ libro
practico de PostgreSQLpractico de PostgreSQL http://es.tldp.org/Postgresql-es/web/navegable/http://es.tldp.org/Postgresql-es/web/navegable/
programmer/programmer.html guia del programadorprogrammer/programmer.html guia del programador http://www.fpress.com/revista/Num0405/Art.htm http://www.fpress.com/revista/Num0405/Art.htm
Ayuda para la instalaciónAyuda para la instalación http://www.nextec.com.ar/postgres/caracteristicas.htmhttp://www.nextec.com.ar/postgres/caracteristicas.htm http://www.fedora-es.com/node/126 http://www.fedora-es.com/node/126