Introducción
PostgreSQL es un potente sistema de base de datos relacional de objetos de código abierto. Se ejecuta en todos los principales sistemas operativos, incluidos Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS, Solaris, Tru64) y Windows OS.
Proporciona una forma muy eficiente de trabajar con bases de datos en PostgreSQL como, crear base de datos, tabla, modificar base de datos, exportar/importar base de datos, etc.
Instalar PostgreSQL
1 . Vaya a la página de descarga del repositorio de PostgreSQL:http://yum.postgresql.org/repopackages.php y agregue el repositorio de PostgreSQL según la arquitectura de su servidor.
Para CentOS 6.x 64 bits:
PostgreSQL 9.4 Release : rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-x86_64/pgdg-centos94-9.4-1.noarch.rpm PostgreSQL 9.5 Release : rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-6-x86_64/pgdg-centos95-9.5-1.noarch.rpm
Para CentOS 7 de 64 bits:
PostgreSQL 9.4 Release : rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpm PostgreSQL 9.5 Release : rpm -Uvh http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-1.noarch.rpm
2. Actualice la lista de repositorios usando el comando:
yum update
3. Instala postgresql con el siguiente comando:
For PostgreSQL 9.4: yum install postgresql94-server postgresql94-contrib
For PostgreSQL 9.5 yum install postgresql95-server postgresql95-contrib
4. Inicialice la base de datos postgresql usando el siguiente comando:
En sistemas CentOS 6.x:
For PostgreSQL 9.4 service postgresql-9.4 initdb
For PostgreSQL 9.5 service postgresql-9.5 initdb
En sistemas CentOS 7:
For PostgreSQL 9.4 /usr/pgsql-9.4/bin/postgresql94-setup initdb
For PostgreSQL 9.5 /usr/pgsql-9.5/bin/postgresql95-setup initdb
5. Inicie el servicio postgresql y haga que se inicie automáticamente en cada reinicio.
En sistemas CentOS 6.x:
For PostgreSQL 9.4 service postgresql-9.4 start chkconfig postgresql-9.4 on
For PostgreSQL 9.5 service postgresql-9.5 start chkconfig postgresql-9.5 on
En sistemas CentOS 7:
For PostgreSQL 9.4 systemctl start postgresql-9.4 systemctl enable postgresql-9.4
For PostgreSQL 9.5 systemctl start postgresql-9.5 systemctl enable postgresql-9.5
Acceder a la línea de comandos de PostgreSQL
El nombre de la base de datos y el usuario de la base de datos predeterminados son "postgres". Cambie al usuario de postgres para realizar operaciones relacionadas con postgresql:
1. Inicie sesión en el indicador postgresql, ingrese el comando:
su - postgres psql
2 . Establezca la contraseña de postgresSQL con el siguiente comando:
Sample Output: postgres=# \password postgres Enter new password: Enter it again: postgres=# \q
3 . Para salir del indicador posgresql, escriba \q seguido de quit para volver a la Terminal.
Crear nuevo usuario y base de datos
Por ejemplo, creemos un nuevo usuario llamado "e2enetworks" con contraseña "centos" y base de datos llamada "mydb"
Switch to postgres user: $ su - postgres
Create user e2enetworks: $ createuser e2enetworks
Create database: $ createdb mydb
Ahora, inicie sesión en el indicador de psql, configure la contraseña y otorgue acceso a la base de datos mydb para e2enetworks:
$ psql#
psql (9.4.0) Type "help" for help.postgres=# alter user e2enetworks with encrypted password 'centos'; ALTER ROLEpostgres=# grant all privileges on database mydb to e2enetworks; GRANT postgres=#
Administrar PostgreSQL con phpPgAdmin
phpPgAdmin es una utilidad de administración basada en web escrita en PHP para administrar PosgreSQL.
1.Ingrese el siguiente comando:
yum install epel-release yum update
2.Ahora, instale phpPgAdmin, ingrese el siguiente comando:
yum install phpPgAdmin
De forma predeterminada, puede acceder a phppgadmin usando http://localhost/phpPgAdmin solo desde su sistema local. Para acceder a los sistemas remotos, realice el siguiente paso que se indica a continuación.
3. Edite el archivo /etc/httpd/conf.d/phpPgAdmin.conf:
vim /etc/httpd/conf.d/phpPgAdmin.conf
Realice los cambios como se muestra a continuación:
Alias /phpPgAdmin /usr/share/phpPgAdmin <Location /phpPgAdmin> <IfModule mod_authz_core.c> # Apache 2.4 Require all granted #Require host example.com </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order deny,allow Allow from all # Allow from .example.com </IfModule> </Location>
4 . Iniciar o reiniciar el servicio de Apache:
On CentOS 6.x systems: service httpd start chkconfig httpd on
On CentOS 7 systems: systemctl enable httpd systemctl start httpd
Configurar phpPgAdmin:
1. Edite el archivo /etc/phpPgAdmin/config.inc.php y realice los siguientes cambios. La mayoría de estas opciones se explican por sí mismas. Léalos detenidamente para saber por qué cambia estos valores.
vim /etc/phpPgAdmin/config.inc.php
Realice los cambios como se muestra a continuación:
$conf['servers'][0]['host'] = 'localhost'; $conf['extra_login_security'] =false; $conf['owned_only'] =true;
2 . Guarde y cierre el archivo. Reinicie el servicio postgresql y los servicios de Apache.
Ahora abra su navegador y vaya a http://dirección-ip/phpPgAdmin
Verá la pantalla phpPgAdmin.