Sunteți pe pagina 1din 31

Sistema de Gestión de Bases de Datos,

SGBD o DBMS por sus siglas en inglés


(Database Management System).
Es un conjunto de programas o utilerías
que permite a los usuarios crear y
mantener una base de datos.
Un SGBD es un software de propósito
general que facilita el proceso de Definir,
Construir y Manipular Bases de Datos.
Definir: Especificar tipos, estructuras y
restricciones.
Construir: Guardar los datos en algún medio
de almacenamiento.
Manipular: Funciones para consultar y
actualizar la BD.
Control de redundancia.
Restricción de accesos no autorizados.
Almacenamiento persistente.
Reglas de deducción.
Suministro de múltiples interfaces con los usuarios.
Representación de Vínculos complejos entre los
datos.
Cumplimiento de las restricciones de integridad.
Respaldo y Recuperación.
Conjunto formado por las Aplicaciones, SGBD y Base de Datos
Programas de aplicación

Software para procesar consultas

Programas para acceder a los datos almacenados

Metadatos ó Base de Datos


Catálogo almacenada
• Representa la BD como una Colección de
Relaciones.
• Una Relación se visualiza como una tabla de
valores.
• Cada Fila representa una colección de valores de
datos relacionados entre sí. Dichos valores son
hechos del mundo real.
• Lenguaje de consultas utilizado por
SGBD’s relacionales como PostgreSQL,
MySQL, Oracle, MS SQL Server, etc.
• Su nombre se deriva de Structured Query
Language (Lenguaje Estructurado de
Consultas).
• DDL (Data Definition Language). Lenguaje de definición de
datos. Es un conjunto de operaciones que se aplican a los
esquemas de bases de datos (crear, modificar o eliminar
esquemas de bases de datos y tablas).
• DML (Data Manipulation Language). Lenguaje de Manipulación
de Datos. Es un conjunto de operaciones que se aplican a los
ejemplares de las bases de datos (insertar, borrar, actualizar o
consultar los datos contenidos en una BD).
• DCL (Data Control Language). Lenguaje de Control de Datos. Es
un conjunto de operaciones que permite administrar los
permisos que los usuarios tienen sobre una BD (otorgar,
revocar).
Una API (Application Program Interface) es un
cliente escrito en algún lenguaje de alto nivel
Cliente o API (PHP, C++, Visual Basic, etc.) que nos permite
conectarnos al servidor a través de un puerto
Puerto
de comunicaciones (5432 por default).
5432
Una copia del programa POSTGRES.EXE se instala
El servidor residente en memoria a la espera de alguna
POSTGRES posible petición por un puerto determinado
(5432 por default, pero puede ser otro).
Una instancia de POSTGRES es una carpeta
Instancia o directorio donde se almacenan tanto las
definiciones de las BD’s, como las BD’s
catálogo BD’s mismas. Un servidor solo puede tener una
instancia montada a la vez.
Los programas psql.exe y pgadmin3.exe son
ejemplos de API’s o clientes. psql.exe está hecho
en C++ y se ejecuta en una consola de comandos,
Cliente o API mientras que pgadmin3.exe usa una interfaz
Puerto gráfica. Aunque vienen incluidos en la distribución
5432 de POSTGRES, son independientes del servidor.
El programa pg_ctl.exe se utiliza para cargar una
El servidor
copia de POSTGRES en memoria, pero no es el
POSTGRES
servidor. Se pueden cargar varios servidores,
cada uno en un puerto diferente
El programa initdb.exe se utiliza para crear
Instancia una nueva instancia de POSTGRES. Aunque
se pueden crear varias instancias, solo una
catálogo BD’s puede ser montada por cada servidor.
Tampoco forma parte del servidor.
Un ejemplo de cómo pueden coexistir varios servidores
en un mismo equipo (situación poco frecuente). Nótese
como solo es necesario un cliente para comunicarse con
cualquiera de ellos.
Clientes psql.exe o
pgadmin3.exe

Servidor Servidor Servidor


POSTGRES POSTGRES POSTGRES
Puerto 5432 Puerto 5433 Puerto 5434

C://instancia1 C://instancia2 C://instancia3

catálogo BD’s catálogo BD’s catálogo BD’s


 Cuando no se tienen privilegios de Administrador (En
equipos de laboratorios universitarios, por ejemplo) se
pueden ejecutar una o más copias copia del servidor
POSTGRES (postgres.exe) en memoria.
 En este caso el programa solo está activo en la sesión en
la que se ejecuta. Al salir de la sesión o al apagar el
equipo el programa se cierra y no puede volverse a
ejecutar si no es de nuevo de manera manual.
 En la instalación automática, en cambio, el programa
POSTGRES se instala como un servicio de Windows ® (o
daemon en Linux) y corre permanentemente en el
sistema.
http://www.enterprisedb.com/products-services-training/pgbindownload

Al momento de escribir esto se hallaba la versión 9.4.4


Como se trabajará en línea de comandos, es cómodo
extraer la carpeta compactada a una ruta con un nombre
sencillo, por ejemplo: c:\pgsql. Sin embargo, en caso de
no tener los permisos apropiados, la distribución se
puede descomprimir en el escritorio o cualquier otra
ubicación.

Directorios
incluidos en la
distribución.
De las carpetas o directorios incluidos en la distribución,
nos interesarán por el momento dos de ellos: bin y doc.
Un conjunto de librerías que
nos permiten crear instancias
(1), levantar un servidor de
postgres (2) y conectarnos a él
(3) de diferentes maneras.

La
documentación
de postgres 9.4.4
en formato
HTML.
Una estructura de archivos (un directorio en disco
duro) donde se almacenan tanto el catálogo, como
una colección de bases de datos que son gestionadas
por el servidor.
Al crear una
instancia se define
Instancia al usuario
administrador y se
catálogo BD’s crea la base de
datos del mismo (la
cual siempre se
llamará postgres).
Se abre una consola de MS-
DOS (símbolo de sistema)

Nos ubicamos en el directorio bin de la distribución:

La ruta anterior puede


cambiar en tu sistema
Otra forma de abrir una
consola de comandos es
ubicándose en el
directorio bin mediante el
explorador de Windows y
con la combinación de
teclas: Shift + Clic derecho
elegir la opción “Abrir
ventana de comandos
aquí” (Solo en Win Vista,
7 ,8 y 10).
Donde:
-D directorio Ubicación de la instancia a crear
-U usuario Nombre del usuario administrador
-A autentificación Método de autentificación a emplear
-W Solicita el password del administrador

Si hay éxito se
mostrará esto,
de lo contrario
repetir.
• Con –D se puede indicar una trayectoria completa entre comillas, por
ejemplo: “c:\bases\instancia”. De no especificarse el directorio
destino, será el mismo donde se ejecuta initdb.exe. Si se omite esta
initdb tratará de tomar el valor de la variable de ambiente PGDATA.
• En la opción –U el nombre de usuario puede ser cualquier nombre
válido. De omitirse se tomará el nombre del usuario en Windows.
• La opción –A admite las opciones: trust, password y md5 entre otras.
trust no solicita password, la opción “password” lo requiere pero no
viaja encriptado; md5 es un método de autentificación suficientemente
seguro. El valor por defecto es trust.
• -W hará que se solicite el password del usuario administrador. No es
necesaria si se utiliza –A trust.
En el proceso, initdb.exe creo el directorio “ejemplo” ,
donde se guardará toda nuestra instancia (bases de
datos, usuarios, etc.)
Una copia del programa
POSTGRES.EXE se instala residente en
El servidor memoria a la espera de alguna
POSTGRES
posible petición por un puerto
determinado (5432 por default, pero
se puede asignar uno diferente).

Instancia El programa pg_ctl.exe se utiliza para


cargar dicha copia de POSTGRES en
catálogo BD’s
memoria, pero no es el servidor. Se
pueden cargar varios servidores, cada
uno en un puerto diferente.
pg_ctl -D ejemplo start

Instancia a montar Iniciar

Esto se
mostrará si
hubo éxito
pg_ctl -D ejemplo –o "-p 5555" start

Si ya hubiera una instancia de Postgres


habrá que cambiar el puerto
 Clientes gráficos. Existen algunas opciones
gratuitas y comerciales que nos permiten
conectarnos y administrar Postgres
gráficamente como lo es pgadmin3.exe,
incluido en el directorio bin/ de la
distribución.
 Utilería psql.exe. Incluido también en el
directorio bin/, es un cliente en línea de
comandos con el que nos podemos conectar
a cualquier servidor Postgres.
En el directorio bin/
Las
propiedades del
objeto
seleccionado en
el explorador
de objetos.

El explorador de
objetos. Nos
permite establecer El panel SQL nos muestra las
conexiones a instrucciones que tuvieron que
diferentes haberse ingresado con SQL para
servidores, en crear y modificar los objetos
diferentes mostrados en el explorador de
ubicaciones. objetos.
La BD “postgres” se
creó en automático
El usuario admin solicita ingresar
con initdb.exe
a la base de datos postgres

El símbolo # informa que se


está accesando con
Se indica que se conecta a
privilegios de administrador
la base de datos postgres
En principio initdb creó el directorio ejemplo/ (como se
estableció con –D). En ese directorio se inician 3 bases de
datos: template0, template1, postgres (para fines prácticos
la única por el momento).
template1 es la plantilla a
Cuando se ejecuta el cliente
partir de la cual se crean
psql, el comando \l muestra
todas las bases de datos,
las bases de datos existentes
como la misma postgres.
template0 es un respaldo
de template1

El dueño es el
administrador, que en
nuestro caso es “admin”
Con la instrucción \du se muestran los usuarios del sistema.

Por el momento hay un solo


usuario “admin” el cual es
superusuario (administrador) y
no es miembro de ningún grupo
Con la instrucción \q
terminamos la conexión del
cliente con el servidor

Apagamos el
servidor con la
opción stop
cucei@outlook.com

S-ar putea să vă placă și