Instalación
Instalación en RHEL/CentOS 7
rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-7-x86_64/pgdg-centos94-9.4-1.noarch.rpm
yum clean all
yum -y update
yum -y install postgresql \
postgresql94-server \
postgresql94-contrib \
postgresql94-devel
systemctl initdb postgresql94
systemctl enable postgresql94
systemctl start postgresql94
Administración de PostgreSQL
Crear usuarios de Base de Datos
Desde shell
createuser [-s] [-d] -P myname
con psql
CREATE ROLE <rol> WITH LOGIN PASSWORD 'algosecreto';
SELECT * FROM pg_shadow;
-
-P
asigna un password. -
-s
crea como superusuario. -
-d
permite al usuario crear bases de datos.
Roles de base de datos
Roles son un concepto separado de los usuarios del sistema. En la práctica es bueno mantener correspondencia, pero no es requisito. Roles son globales a través de una instalación en cluster y no por base de datos individual.
CREARE ROLE <role>;
DROP ROLE <role>;
Para listar los roles existentes en una instancia de PostgreSQL.
SELECT <rol> FROM pg_roles;
Desde línea de comandos existen los programas createuser
y dropuser
.
Crear base de datos
En línea de comandos
createdb -O myname mydb
En psql
CREATE DATABASE mydb [WITH OWNER someuser];
Cambiar base de datos en psql
\c database
Lista bases de datos en el schema
Cualquiera de los comandos siguientes regresa lo mismo.
\l
SELECT datname FROM pg_database;
Lista las tablas de la base de datos actual
\d table
SELECT column_name FROM information_schema.columns WHERE table_name
-- mysql: DESCRIBE TABLE
postgresql: \d+ table
postgresql: SELECT column_name FROM information_schema.columns WHERE table_name
Restauración de Respaldo
psql [] <BD> < respaldo.sql
pg_restore -c [-d BD] respaldo.dump
Referencias
- http://www.postgresql.org/
- http://yum.postgresql.org/