Want to create interactive content? It’s easy in Genially!

Get started free

Administración de Bases de Datos

keitaro_360

Created on November 20, 2016

Start designing with a free template

Discover more than 1500 professional designs like these:

Piñata Challenge

Teaching Challenge: Transform Your Classroom

Frayer Model

Math Calculations

Interactive QR Code Generator

Interactive Scoreboard

Interactive Bingo

Transcript

Administración de bases de datos

Funciones del DBA

Administrador de bases de datos (DBA)Es el encargado del diseño fisico de la base de datos y de su implementación, realiza el control de la seguridad y de la concurrencia entre otras cosas.

Habilidades del administrador de bases de datosLa administración efectiva de los datos requiere habilidades tanto técnicas como administrativas.

Rol técnico del DBAEsta enfocado en actividades que implican el uso de SGBD, diseño, desarrollo, y ejecución de la base de datos asi como la producción, desarrollo y uso de programas de aplicación.

Rol administrativo del DBAEsta enfocado en el manejo del personal y en la interacciones con la comunidad de usuarios.

El administrador de bases de datos es responsable de las siguientes actividades y servicios.

Actividades

Servicios

  • Planeación
  • Organización
  • Pruebas
  • Monitoreo
  • Suministro
  • Soporte al usuario
  • Politicas, normas y procedimientos
  • Seguridad e integridad
  • Respaldos y recuperación
  • Distribución y uso de datos

Politicas, normas y procedimientosUna estrategia de administracion exitosa es el establecimiento y aplicacíón continua de politicas, normas y procedimientos para la correcta creación, uso y eliminación de datos dentro de la base de datos.

PoliticaDeclaraciones generales de dirección o acción que comunican y sustentan los objetivos del DBA.

NormaDescriben las necesidades minimas de una actividad determinada de un DBA.

ProcedimientoInstrucciones por escrito que describen una serie de pasos a seguir durante la operación de una actividad determinada.

El DBA debe definir, comunicar y hacer cumplir las politicas, normas y procedimientos que abarcan campos de actividad tales como:

  • Diseño y modelado de una base de datos
  • Documentación y convenciones para dar nombre
  • Selección de software de bases de datos
  • Seguridad e Integridad de una base de datos
  • Respaldo y recuperación de una base de datos
  • Mantenimiento y operación

Administración del servidor

PostgreSQLEs un sistema de gestión de base de datos relacional bajo licencia BSD y su código fuente distribuido libremente. El sistema de gestión de bases de datos de código abierto más potente del mercado.

Comandos con pg_ctl para detener, arrancar y reiniciar el servidor en PostgreSQL

En WIndowsComando para detener el servidorpg_ctl -U postgres -D "C:\Program Files\PostgreSQL\data\pg96" stop Comando para arrancar el servidor pg_ctl -U postgres -D "C:\Program Files\PostgreSQL\data\pg96" start Comando para reiniciar el servidor pg_ctl -U postgres -D "C:\Program Files\PostgreSQL\data\pg96" restart

En LinuxComando para detener el servidor$ /usr/lib/postgresql/9.5/bin/pg_ctl stop -D /etc/postgresql/9.5/main Comando para arrancar el servidor $ /usr/lib/postgresql/9.5/bin/pg_ctl start -D /etc/postgresql/9.5/main Comando para reiniciar el servidor $ /usr/lib/postgresql/9.5/bin/pg_ctl restart -D /etc/postgresql/9.5/main

Comandos utiles en Postgresql

Comandos para entrar al prompt de PostgreSQL en WindowsC:\Program Files\PostgreSQL\pg96\bin psql -U postgres

Comandos para entrar al prompt de PostgreSQL en Linux sudo su -- postgres psql -U postgres

  • \conninfo Muestra la información de la conexion activa.
  • \? Muestra la lista de comandos que se usa en la consola interativa de postgreSQL.
  • \h Muestra la lista de los comandos sobre los que tiene una descripción de ayuda.
  • \h insert Muestra la ayuda de un comando en especifico.
  • \encoding Muestra la codificación que tiene activa nuestra consola.
  • \l Muestra el listado de todas las bases de datos.
  • \c basededatos Cambia a otra base de datos.
  • \d Muestra las tablas de las bases de datos.
  • \d nombreTabla Muestra la descripción de la tabla.
  • \i nombreArchivo Ejecuta el script .txt, .sql.
  • \o /ruta/nombreArchivo Guarda el resultado de una consulta

MYSQLManejador de bases de datos relacional de código abierto basado en lenguaje de consulta estructurado (SQL) y con interfaz grafica utiliza Workbench

Comandos para detener, arrancar y reiniciar el servidor en MYSQL

En Linux$sudo service mysql stop $sudo service mysql start $sudo service mysql restart

En Linux$sudo /etc/init.d/mysql stop $sudo /etc/init.d/mysql start $sudo /etc/init.d/mysql restart

Comandos utiles en MYSQL

Comandos para entrar a MySQL en WindowsC:\Program Files\MySQL\MySQL Server 5.7\bin mysql -u root -p

Comando para entrar a MySQL en Linuxmysql -u root -p

  • \show database; Muestra el listado de todas las bases de datos.
  • \use basededatos; Cambia a otra base de datos.
  • \show tables; Muestra las tablas de las bases de datos.
  • \descibe nombreTabla; Muestra la descripción de la tabla.
  • \ nombreArchivo Ejecuta el script .txt, .sql.
  • \s Muestra la información de la conexion activa.
  • \? Muestra la lista de comandos que se usa en la consola interativa de postgreSQL.
  • \h Muestra la lista de los comandos sobre los que tiene una descripcion de ayuda.
  • \h insert Muestra la ayuda de un comando en especifico.

Administración del catálogo

El catálogo consiste en el conjunto de tablas del sistema que guarda información sobre los objetos de la base de datos.Todo DBA necesita conocer con que tablas del catálogo cuenta en caso de que necesite información especifica de los objetos de datos. Dado que son tablas es posible hacer consultas basadas en la instrucción SELECT con el fin de personalizar la información del catálogo.

En Linux Comando que muestra las tablas del catálogo en PostgreSQL postgres=# \dS

En linuxInstrucción para consultar las tablas del catálogo en MySQLuse information_schema

Consulta que muestra las bases de datos que hay en el sistemaSELECT * FROM SCHEMATA; Consulta que muestra las tablas que existen en la base de datos SELECT * FROM TABLES; Consulta que muestra información sobre los privilegios globales. SELECT * FROM USER_PRIVILEGES; Consulta que muestra todos los procesos del servidor SELECT * FROM PROCESSLIST; Consulta que muestra información sobre los indices de las tablas SELECT * FROM STATISTICS;

Consulta que muestra las bases de datos que hay en el sistema. SELECT * FROM pg_database; Consulta que muestra las tablas que existen en la base de datos. SELECT * FROM pg_class; Consulta que muestra los roles y usuarios de la base de datos. SELECT * FROM pg_roles; Consulta que muestra datos sobre los procesos del servidor y numero de clientes conectados a las bases de datos. SELECT * FROM pg_stat_activity; Consulta que muestra datos sobre el uso global de la base SELECT * FROM pg_stat_database;

Importación y exportación de datos

Importación de datos

Sintaxis para importar los datos de un archivo a una tabla en donde cada dato del archivo esta separado por comas. COPY nombreTabla FROM 'Dirección/nombreArchivo' WITH DELIMITER ',';

Opciones comunes:Formato: Tipo de Archivo (csv ó txt) Delimiter: Separador de columnas (los separadores recomendados son | y la ,) Null: Cadena que representa el valor nulo Header: Indica la primera linea contiene encabezados (formato csv) QUOTE: Caracter usado para citar texto / valores

Sintaxis para importar los datos de un archivo a una tabla de la base de datos en donde cada dato del archivo esta separado por comas, con formato csv y la primera linea del archivo lo toma como encabezado.COPY nombreTabla FROM 'Dirección/nombreArchivo' WITH (FORMAT csv, HEADER, DELIMITER ',');

Sintaxis para importar los datos de un archivo deacuerdo a los campos de la tabla y en donde cada dato del archivo esta separado por comas, con formato csv y la primera linea del archivo lo toma como encabezado.COPY nombreTabla (campos de la tabla) FROM 'Dirección/nombreArchivo' WITH (FORMAT csv, HEADER, DELIMITER ',');

Sintaxis para importar los datos de un archivo deacuerdo a los campos de la tabla y en donde cada dato del archivo esta entre comillas dobles, con formato csv y la primera linea del archivo lo toma como encabezado.COPY nombreTabla (campos de la tabla) FROM 'Dirección/nombreArchivo' WITH (FORMAT csv, HEADER, DELIMITER ',', QUOTE '"')

Exportación de datos

Sintaxis para exportar los datos de una tabla a un archivo en donde cada atributo de la tabla esta separado por comasCOPY nombreTabla TO 'Dirección/nombreArchivo' WITH DELIMITER ',';

Sintaxis para exportar los datos de una tabla a un archivo en donde se incluye los nombres de las columnas y cada atributo de la tabla esta separado por comas COPY nombreTabla TO 'Dirección/nombreArchivo' WITH (FORMAT csv, HEADER);

Sintaxis para exportar los datos de una tabla a un archivo en donde cada atributo de la tabla esta separado por tabuladores COPY nombreTabla TO 'Dirección/nombreArchivo' WITH (DELIMITER E'\t');

Sintaxis para exportar una consulta a un archivo en donde se incluye los nombres de las columnas y cada atributo de la tabla esta separado por comas COPY SELECT (campos) FROM (nombreTabla) TO 'Dirección/nombreArchivo' WITH (FORMAT csv, HEADER);

Monitoreo del sistema

Monitoreo, vigilar el comportamiento de un sistema

Elementos comunes a tomar en cuenta para el monitoreo

  • Servidor: Disponibilidad y los posibles problemas del hardware
  • CPU: Carga del sistema y uso del CPU
  • Memoria (SWAP): Carga y uso de la Memoria RAM y la memoria de intercambios
  • Red: Disponibilidad de los componentes de red y trafico de entrada y salida
  • Disco de almacenamiento: Espacio utilizado
  • PostgreSQL: Numero de conexiones, numero de transacciones, bloqueos y espacio usado

Los objetivos principales de monitoreo son:

  • Verificar el consumo de recursos
  • Tiempo de respuesta del servidor
  • Detección de problemas de red
  • Obtener información de una herramienta, tarea o consulta

top: Comando que muestra de manera dinamica el uso del servidor. iostat: Comando que muestra las estadisticas de escritura y lectura en disco. mpstat: Comando que muestra la actividad del procesador.htop: Permite ver los procesos que se ejecutan en el servidoruptime: Muestra el tiempo en minutos en que el sistema esta corriendoFree y vmstat: Permite ver el espacio libre de Memoria RAM y el uso de la SWAPnetstat: Herramienta que muestra las conexiones de red tanto entrantes como salientes de un equipo.

Diplomado Diseño y Administración de Base de DatosModulo 5: Administración de Bases de Datos Alumno: Juan Manuel Fernández Morales