You are on page 1of 6

Instalación de PostgreSQL en Debian GNU/Linux Wheezy

This entry was posted on 01/03/2013, in Base de datos, Distros GNU/Linux, GULME, Linux,
Mi!ra"i#n, $o%tware &i're and ta!!ed aptitude, De'ian, !nu &inux, GULME, Linux, Mi!ra"i#n,
(ost!re$)L, $o%tware &i're, *hee+y, Boo-.ar- the per.a&in-, 10 "o.entarios
Este arti"u&o exp&i"a "o.o insta&ar e& ser/idor y un "&iente de &ineas de "o.andos de &a 'ase de
datos (ost!re$)L en De'ian *hee+y,
Introducción
(ost!re$)L
(ost!re$)L, es un !estor de 'ase de datos re&a"iona&, &a pri.era /ersi#n de& "#di!o %ue p0'&i"o e& 1
de a!osto de 1112, &i'erado 'a3o &a &i"en"ia B$D y desarro&&ado por “PostgreSQL Global
Development Group”,
De'ian GNU/Linux
De'ian GNU/Linux, es un siste.a operati/o, &i'erado 'a3o &a &i"en"ia G(L y desarro&&ado por
4(roye"to De'ian5 una "o.unidad de desarro&&adores y usuarios,
Instalación
(ara este "aso se insta&ara e& ser/idor y un "&iente de &ineas de "o.andos (ost!re$)L de &a
/ersi#n 1,1, e3e"utando e& si!uiente "o.ando6
# aptitude install postgresql-9.1
on!iguración
Lo pri.ero 7ue se tiene 7ue ha"er es "a.'iar&e &a "ontrase8a a& usuario "#ostgres$ 7ue se "rea
&ue!o de ha'er insta&ado e& pa7uete6
# passwd postgres
9""eda a &a "onso&a de ad.inistra"i#n de (ost!re$)L para "a.'iar &a "ontrase8a de& usuario
"#ostgres$ "on &os si!uientes "o.andos6
# su postgres
postgres@nombre_maquina:/directorio$ psql postgres
postgres=# A!"# #$" postgres %A&&'$#( )*$+!#A&"+A_("_,&,A#-$).
Donde "#ostgres$ es e& no.'re de& usuario a& "ua& de'e "a.'iar
&a "ontrase8a "%N&'(S)N(*D)L*USU('I%$ por &a 7ue esta'&e"i# pre/ia.ente y &ue!o sa&!a
de &a sesi#n, e3e"utando &os si!uientes "o.andos6
postgres=# /q
postgres@nombre_maquina:/directorio$ e0it
on!iguración de acceso local
(ara dar a""eso &o"a&, es de"ir, dar a""esos a "&ientes (ost!re$)L 7ue est:n en e& .is.o ser/idor
donde esta insta&ando e& ser/idor (ost!re$)L puede ap&i"ar &as si!uientes "on%i!ura"iones ':si"as6
De'e 7ue "a.'iar e& archivo de configuración del servidor PostgreSQL, "on e& si!uiente "o.ando6
# 1im /etc/postgresql/9.1/main/postgresql.con2
Bus7ue &a &inea listen*addresses y /eri%i7ue 7ue su /a&or sea e& si!uiente6
listen_addresses = )local3ost)
Guarde e& ar"hi/o y sa&!a de& editor,
Ta.'i;n de'e .odi%i"ar e& archivo de configuración del cliente PostgreSQL, "on e& si!uiente
"o.ando6
# 1im /etc/postgresql/9.1/main/pg_3ba.con2
En este ar"hi/o puede "on%i!urar &os .odos de autenti"a"i#n de& "&iente (ost!re$)L y "on 7ue
usuario puede a""eder a &os datos a&.a"enados en e& ser/idor (ost!re$)L,
(ara este "aso de "on%i!ura"i#n usted esta "one"t:ndose &o"a&.ente en e& .is.o ser/idor donde
esta insta&ado (ost!re$)L por &o "ua& &a <( &o"a& es +,-././.+, enton"es a!re!ue de'a3o de &a &inea
01 IP23 local connections45 &a si!uiente instru""i#n6
3ost nombre_base_datos usuario_postgresql 145.6.6.1/74 password
Donde "no6bre*base*datos$ y "usuario*#ostgres7l$ es e& no.'re de &a 'ase de datos y e& usuario
de (ost!re$)L a "rear respe"ti/a.ente .as ade&ante en este arti"u&o,
=on estas "on%i!ura"iones he"has de'e reini"iar e& ser/i"io de (ost!re$)L, "on e& si!uiente
"o.ando6
# ser1ice postgresql restart
on!iguración de acceso re6oto
(ara dar a""eso re.oto a "&ientes (ost!re$)L desde otro .a7uina o .as"ara de red distinta a &a de
donde esta insta&ado ser/idor (ost!re$)L puede ap&i"ar &as si!uientes "on%i!ura"iones ':si"as6
De'e 7ue "a.'iar e& archivo de configuración del servidor PostgreSQL, "on e& si!uiente "o.ando6
# 1im /etc/postgresql/9.1/main/postgresql.con2
Bus7ue &a &inea listen*addresses 8 "localhost$ y &a "a.'ia por e& si!uiente6
listen_addresses = )8)
>p"iona&.ente usted puede si.p&e.ente unir &as dire""iones <( espe"i%i"as a &a "ua& da a""eso de &a
si!uiente %or.a6
listen_addresses=)194.19:.7.446 194.19:.7.441)
Guarde e& ar"hi/o y sa&!a de &a edi"i#n,
Ta.'i;n de'e .odi%i"ar e& archivo de configuración del cliente PostgreSQL, "on e& si!uiente
"o.ando6
# 1im /etc/postgresql/9.1/main/pg_3ba.con2
En este ar"hi/o puede "on%i!urar desde 7ue .a7uina o .as"ara de red puede a""eder a &os datos
a&.a"enados en e& ser/idor (ost!re$)L y "on 7ue usuario se puede a""eder,
(ara e3e.p&o pra"ti"o 7ue se supon!a 7ue esta en una red +9,.+:;.+.+/+: as? 7ue 7uiere dar&e
a""eso a &a <( +9,.+:;.<.,,/, a!re!ue de'a3o de &a &inea 01 IP23 local connections45 &a si!uiente
instru""i#n6
3ost nombre_base_datos usuario_postgresql 194.19:.4.7/74 md;
Donde "no6bre*base*datos$ y "usuario*#ostgres7l$ es e& no.'re de &a 'ase de datos y e& usuario
de (ost!re$)L a "rear respe"ti/a.ente .as ade&ante en este arti"u&o,
E& "6d=> es e& .;todo de en/i# de &a "ontrase8a de& usuario (ost!re$)L por &a red
a "o.para"i#n de &a Configuración de acceso local 7ue se de%ine en "#ass?ord$ &a
"ua& en/?a &a "ontrase8a en texto p&ano por &a red, en &a Configuración de acceso remota se
"on%i!ura "6d=> ya 7ue en/?a "ontrase8as "i%radas,
=on estas "on%i!ura"iones he"has de'e reini"iar e& ser/i"io de& ser/idor (ost!re$)L, "on e&
si!uiente "o.ando6
# ser1ice postgresql restart
reando usuarios
(ara "rear usuarios /ue&/e a entrar "o.o root de (ost!re$)L para "rear usuarios para "one"tarse a
&a 'ase de datos, en este "aso usuario "usuario*no6ina$ "on su "ontrase8a $+,<3=:>, "on e&
si!uiente "o.ando6
# su postgres
postgres@nombre_maquina:/directorio$ createuser -( -& -# -l usuario_nomina
Este usuario "usuario*no6ina$ tiene per.iso para no crear base de datos, no ser su#er usuario,
no crear roles de usuario, se le #er6ite iniciar sesión respe"ti/a.ente,
(ara asi!nar &a "ontrase8a de'e "one"tarse a& ser/idor (ost!re$)L, "on e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ psql postgres
Esta &a sesi#n "one"tado a&tere e& usuario asi!nando una "ontrase8a "i%rada, "on e& si!uiente
"o.ando6
postgres=# A!"# ,&"# usuario_nomina '-!< "+*#=%!"( %A&&'$#( )147>;9).
A!"# #$"
(ara "o.pro'ar 7ue e& usuario se "reo "on ;xito, e3e"ute &os si!uientes "o.andos6
postgres=# &""*! usename? passwd @#$A pg_s3adow.
usename B passwd
----------------C-------------------------------------
postgres B md;715;bce1d7461d19;9>ceb29d5eb729d
usuario_nomina B md;bad5>76;62a9b:19176:;;29cbb7;5ee
D4 2ilasE
Lue!o sa&!a de &a sesi#n de 'ase de datos, e3e"utando e& si!uiente "o.ando6
postgres=# /q
reando base de datos
(ri.ero tiene 7ue ini"iar sesi#n "o.o usuario 4root5 de (ost!re$)L, "on e& si!uiente "o.ando6
# su postgres
Lue!o de ini"iar sesi#n en e& ser/idor "o.o 4root5, ahora usted puede "rear una 'ase de datos, "on
e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ createdb -!template6 -$ usuario_nomina
-",!@-: sistema_nomina
Esta 'ase de datos "siste6a*no6ina$ se 'asa en &a p&anti&&a de 'ase de datos &&a.ada "te6#late/>
"on &a "ua& es "onstruida, e& usuario due8o de &a 'ase de datos es e& usuario "usuario*no6ina$
pre/ia.ente "reado, usando e& es7ue.a de "odi%i"a"i#n de "ara"teres "U&@A;> soportado a ser
usado en esta 'ase de datos respe"ti/a.ente,
(ara &os pri/i&e!ios de& usuario "usuario*no6ina$ en &a 'ase de datos "siste6a*no6ina$ de'e
"one"tarse a& ser/idor (ost!re$)L, e3e"ute e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ psql postgres
9& estar en &a sesi#n "one"tado otor!ue todos &os pri/i&e!ios a& usuario "usuario*no6ina$ en &a
'ase de datos "siste6a*no6ina$, "on e& si!uiente "o.ando6
postgres=# F#A+! A %#-G-"F"& $+ (A!AHA&" sistema_nomina !$ usuario_nomina.
(ara "o.pro'ar 7ue &a 'ase datos esta "reada, e3e"ute e& si!uiente "o.ando6
postgres=# &""*! datname @#$A pg_database.
datname
-----------------
template6
postgres
template1
sistema_nomina
D> 2ilasE
Lue!o sa&!a de &a sesi#n de 'ase de datos, e3e"utando e& si!uiente "o.ando6
postgres=# /q
argar estructura de datos y registros
9 "ontinua"i#n se "rear: una 'ase de datos 'asado en un s"ript 7ue i.porta toda &as sintaxis en
lenguaje de definición de datos (DDL) y lenguaje de manipulación de datos (DL) en $)L para
"onstruir&a, e3e"ute e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ psql -, postgres -2
/3ome/macagua/script.sql
Lue!o sa&!a de &a sesi#n de usuario #ostgres, e3e"utando e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ e0it
(ccediendo a la base de datos
Una /es rea&i+ado &os pasos anterior.ente des"ritos ahora puede "one"tarse "on e& usuario
"usuario*no6ina@ a &a 'ase de datos "siste6a*no6ina$ y para estoy existe /arias %or.as de a""eso
7ue se des"ri'en a "ontinua"i#n6
(cceso local a la base de datos
$e uti&i+a este %or.a de a""eso a &a 'ase de datos "uando tiene he"ha una con!iguración de acceso
local y para esto se e3e"uta e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ psql -d sistema_nomina -, usuario_nomina
*ontraseIa para usuario usuario_nomina:
psql D9.1.:E
(igite J3elpK para obtener aLuda.
sistema_nomina=M 3elp
"stN usando psql? la inter2aO de lPnea de Qrdenes de %ostgre&R.
(igite: /copLrig3t para 1er los tSrminos de distribuciQn
/3 para aLuda de Qrdenes &R
/T para aLuda de Qrdenes psql
/g o punto L coma DJ.KE para eUecutar la consulta
/q para salir
sistema_nomina=M
(cceso re6oto a la base de datos
$e uti&i+a este %or.a de a""eso a &a 'ase de datos "uando tiene he"ha una con!iguración de acceso
re6oto, a di%eren"ia de& acceso local a la base de datos en este "aso tiene 7ue indi"ar e& "host$ a&
"ua& se desea "one"tar, para ha"er esto se e3e"uta e& si!uiente "o.ando6
postgres@nombre_maquina:/directorio$ psql -3 16.16.49.;6 -, usuario_nomina -d
sistema_nomina
*ontraseIa para usuario usuario_nomina:
psql D9.1.:E
(igite J3elpK para obtener aLuda.
sistema_nomina=M 3elp
"stN usando psql? la inter2aO de lPnea de Qrdenes de %ostgre&R.
(igite: /copLrig3t para 1er los tSrminos de distribuciQn
/3 para aLuda de Qrdenes &R
/T para aLuda de Qrdenes psql
/g o punto L coma DJ.KE para eUecutar la consulta
/q para salir
sistema_nomina=M
A as? de esta %or.a Besta &isto para tra'a3ar "on &a 'ase de datosC