Download instalación y configuración servidor de bases de datos postgresql

Document related concepts
no text concepts found
Transcript
INSTALACIÓN Y CONFIGURACIÓN SERVIDOR DE BASES DE DATOS
POSTGRESQL EN FEDORA SERVER 24
BRAYAM ALBERTO MORA ARIAS
COD: 1151010
PRESENTADO A:
Ing. JEAN POLO CEQUEDA OLAGO
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
ADMINISTRACIÓN DE SISTEMAS OPERATIVOS DE RED
FACULTAD DE INGENIERIA
PROGRAMA INGENIERIA DE SISTEMAS
II SEMESTRE
2016
SERVIDOR DE BASES DE DATOS POSTGRESQL
PostgreSQL es un Sistema de gestión de bases de datos relacional orientado a objetos
y libre, publicado bajo la licencia BSD.
Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es
manejado por una empresa y/o persona, sino que es dirigido por una comunidad de
desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyada por
organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL
Global Development Group).
FUNCIONAMIENTO MOTOR DE BASES DE DATOS POSTGRESQL
PostgreSQL está basado en una arquitectura cliente-servidor. El programa servidor se
llama postgres y entre los muchos programas cliente tenemos, por ejemplo, pgaccess
(un cliente gráfico), phpPgAdmin (un cliente web), psql (un cliente en modo texto) y
phpPgAdmin III (un cliente de escritorio).
El funcionamiento del servidor es el siguiente:
1. El usuario o administrador accede a través de un cliente, ya sea web, comando o
escritorio, para el caso accederemos a través de un cliente web y escritorio.
2. El usuario realiza la petición al navegador a través de la URL donde se aloja la
base de datos.
3. El servidor web responde la solicitud y muestra la página de autenticación de
usuarios de la base de datos postgresql.
4. La base de datos postgresql verifica que el usuario se encuentre en la base de
datos y las credenciales sean correctas.
5. La base de datos postgresql da respuesta al cliente web (phpPgAdmin) de la base
de datos y este permite ingresar o no a la base de datos.
6. Por último el navegador muestra la base de datos para el usuario que ingreso.
Nota: Un proceso servidor puede atender exclusivamente a un solo cliente, es decir,
hacen falta tantos procesos servidores como clientes haya.
El proceso postmaster es el encargado de ejecutar un nuevo servidor para cada cliente
que solicite una conexión a la base de datos.
1. INSTALACION POSTGRESQL
Lo primero que debemos hacer es loguearnos con el usuario root .
Luego escribimos el comando:
dnf install postgresql postgresql-server postgresql-contrib postgresql-docs postgresql-libs
Se iniciará el proceso de comprobación para ver si ya hay paquetes instalados, luego
procederá a pedir confirmación para empezar a descargar:
2. CAMBIAMOS LA CONTRASEÑA DEL USUARIO POSTGRES
Para cambiar la contraseña de postgresql se realiza mediante el comando: passwd
postgresql
Se solicita que escribamos la nueva contraseña, el cual debe ser superior a 8 caracteres,
después se solicita que volvamos a escribir la nueva contraseña, para confirmar que se
haya escrito de manera correcta. Si todo esta correcto mostrara que se actualizo con
éxito.
3. INICIAR EL SERVICIO
Ahora debemos iniciar el servicio de la base de datos y para ello digitamos el siguiente
comando: postgresql-setup initdb
El comando postgresql-setup initdb lleva a cabo la creación del clúster donde se
almacenarán los archivos de configuración y bases de datos de la instancia de
PostgreSQL que acabamos de iniciar. Por defecto se ubica en /var/lib/pgsql/data.
Este comando solo puede ser ejecutado una vez, ya que si tratamos de escribirlo
nuevamente nos avisará que hay un error, esto se debe a que ya se encuentra en
ejecución.
4. CONFIGURAR ACCESO REMOTO
Para permitir el acceso remoto al servidor de PostgreSQL debemos modificar el
parámetro listen_addresses del archivo /var/lib/pgsql/data/postgresql.conf.
Este parámetro sirve para especificar desde qué interfaz de red escuchará el servidor
postgreSQL. Para ello digitamos el siguiente comando:
nano /var/lib/pgsql/data/postgresql.conf
Estando en este archivo debemos realizar unos cambios primero buscar la siguiente
línea:
# listen_addresses = ‘localhost’ (Por defecto está configurado para escuchar conexiones
locales).
Esta línea debe ser cambiada por:
listen_addresses = ‘*’ (configurándolo para que escuche en todas las interfaces de red
del servidor).
Luego buscamos la siguiente línea:
# port = 5432
Esta línea debe ser cambiada por:
port = 5432
Finalmente guardamos con Ctrl+O y cerramos con Ctrl+X A continuación, modificamos
el archivo que define a qué bases de datos se pueden conectar los usuarios y desde
dónde. Esta información se detalla en el archivo /var/lib/pgsql/data/pg_hba.conf.
Es una capa extra de seguridad complementaria a la gestión de privilegios de usuarios
dentro del PostgreSQL. Para ello digitamos el siguiente comando:
nano /var/lib/pgsql/data/pg_hba.conf
Estando en este archivo debemos realizar un cambio para ello buscamos la siguiente
línea:
host all all 127.0.0.1/32 ident
Esta línea debe ser cambiada por:
host all all 127.0.0.1/32 md5
Donde host es el tipo de conexión, database son las bases de datos que pueden
acceder, user los usuarios que pueden acceder, address es la dirección desde la cual
se va a acceder a la base de datos y method el método de autenticación de los usuarios.
Nota: Ident identifica todos los usuarios que entran pero no requiere autenticación, en
cambio md5 si lleva el control de autenticación con el password del usuario que quiere
acceder.
trust: permite conectar a postgresql sin contraseña.
md5: Esto es para que el cliente tenga que proporcionar una contraseña procesada con
el algoritmo MD5.
Finalmente guardamos con Ctrl+O y cerramos con Ctrl+X.
5. SERVICIO PARA ARRANCAR
Para que se inicie PostgreSQL cuando se inicie el equipo se debe digitar los siguientes
comandos:
systemctl start postgresql.service
systemctl status postgresql.service
systemctl enable postgresql.service
El comando systemctl start postgresql.service arranca la instancia del servidor de bases
de datos PostgreSQL
El comando systemctl status postgresql.service sirve para comprobar que PostgreSQL
se ha instalado y se está ejecutando correctamente en el servidor.
6. INSTALAR phpPgAdmin
Para instalar phpPgAdmin, que es el cliente web para la administración de la base de
datos de PostgreSQL, lo hacemos con el comando:
dnf install phpPgAdmin
Una vez instalado, tenemos que configurar el archivo: config.inc.php, ubicado en:
/etc/phpPgAdmin/ con el comando:
nano /etc/phpPgAdmin/config.inc.php
Debemos agregar la palabra ‘localhost’, y finalmente guardamos con Ctrl+O y cerramos
con Ctrl+X.
Ahora vamos a configurar el archivo phpPgAdmin.conf que se encuentra en:
nano /etc/httpd/conf.d/phpPgAdmin.conf
Lo que vamos a realizar es a comentar todo lo que se encuentra y al finalizar le colocamos
lo siguiente:
Require all granted
Reiniciamos el servidor web apache:
systemctl restart httpd.service
7. PROBANDO EL SERVICIO
Ingresamos a phpPgAdmin, a través de la URL: ip-nuestra/phpPgAdmin, por ejemplo:
192.168.1.15/phpPgAdmin
Y nos muestra el cliente web:
Para poder acceder debemos proporcionar un usuario y contraseña, a continuación
crearemos uno:




Ingresamos con el usuario posgres con el siguiente comando:
su postgres (nos pedirá contraseña)
Aparece en el prompt la palabra bash-4.3$ y digitamos el comando:
psql
Se mostrará en el prompt ahora la palabra postgres=#
Aquí ya podemos empezar a crear bases de datos, tablas, usuarios, asignar roles,
etc.
Un ejemplo de una base de datos creada con el comando:
CREATE DATABASE ufps;
Un ejemplo de una tabla creada en la base de datos ufps:
Ahora creamos un usuario y le asignamos el rol super usuario:
Podemos consultar nuestros usuarios con el siguiente comando:
SELECT * FROM pg_user;
Ahora podemos ingresar a phpPgAdmin con el usuario creado:
8. INSTALACIÓN pgAdmin III
pgAdmin III es un poderoso cliente de escritorio para la administración de la bases de
datos PostgreSQL.
Nos dirigimos al siguiente link para descargar:
http://www.pgadmin.org/download/windows.php
Para conectarse a la base de datos, damos click en add a conection to server(el icono
con forma de enchufe)
Nota: antes de conectarnos, debemos agregar la IP del Windows en el archivo de
autenticación de postgresql hba.conf, ubicado en /var/lib/pgsql/data/pg_hba.conf
Y agregamos la línea: host all all IP de Windows md5
Ingresamos los siguientes datos:
Name: nombre de la conexión a la base de datos (cualquiera).
Host: la IPv4 de Windows.
Username: el nombre de usuario que se quiere conectar a la base de datos.
Password: contraseña del usuario. 16 Y con esto nos hemos conectado a la base de
datos postgres, a través del cliente de escritorio en Windows, donde podremos crear
bases de datos, crear tablas, crear variables, hacer consultar, visualizar gráficamente las
tablas, etc.
Listo, ya hemos configurado el servidor de bases de datos y dos formas para
poder interactuar con la base datos, mediante pgAdmin y phpPgAdmin.