<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
	<id>http://wiki.joanillo.org/index.php?action=history&amp;feed=atom&amp;title=Instal%C2%B7laci%C3%B3_i_configuraci%C3%B3_de_Postgres</id>
	<title>Instal·lació i configuració de Postgres - Historial de revisió</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.joanillo.org/index.php?action=history&amp;feed=atom&amp;title=Instal%C2%B7laci%C3%B3_i_configuraci%C3%B3_de_Postgres"/>
	<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=Instal%C2%B7laci%C3%B3_i_configuraci%C3%B3_de_Postgres&amp;action=history"/>
	<updated>2026-08-30T08:18:18Z</updated>
	<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
	<generator>MediaWiki 1.34.2</generator>
	<entry>
		<id>http://wiki.joanillo.org/index.php?title=Instal%C2%B7laci%C3%B3_i_configuraci%C3%B3_de_Postgres&amp;diff=257319&amp;oldid=prev</id>
		<title>Joan: Es crea la pàgina amb «==Instal·lació== &lt;pre&gt; apt-get install postgresql-8.1 &lt;/pre&gt;  ==Configuració==  Un cop instal.lat el Postgres hem d'accedir al compte ''postgres'' del SO. Com que l'us...».</title>
		<link rel="alternate" type="text/html" href="http://wiki.joanillo.org/index.php?title=Instal%C2%B7laci%C3%B3_i_configuraci%C3%B3_de_Postgres&amp;diff=257319&amp;oldid=prev"/>
		<updated>2018-05-30T18:00:31Z</updated>

		<summary type="html">&lt;p&gt;Es crea la pàgina amb «==Instal·lació== &amp;lt;pre&amp;gt; apt-get install postgresql-8.1 &amp;lt;/pre&amp;gt;  ==Configuració==  Un cop instal.lat el Postgres hem d&amp;#039;accedir al compte &amp;#039;&amp;#039;postgres&amp;#039;&amp;#039; del SO. Com que l&amp;#039;us...».&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Instal·lació==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apt-get install postgresql-8.1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuració==&lt;br /&gt;
&lt;br /&gt;
Un cop instal.lat el Postgres hem d'accedir al compte ''postgres'' del SO. Com que l'usuari postgres per defecte no té password (no està habilitat, igual que root), només podem fer ''su postgres'' si som root (sudo bash) o com a superusuaris (sudo).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
joan$ sudo bash # OK Sudo es un comando que permite otorgarle a un usuario normal (no privilegiado) los derechos suficientes para ejecutar ya sea comandos privilegiados o en general para ejecutar programas bajo la identidad de usuario (privilegiado o no) del sistema. &lt;br /&gt;
root$ su postgres #OK&lt;br /&gt;
postgres$ psql&lt;br /&gt;
postgres =&amp;gt; \q&lt;br /&gt;
postgres$&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
també hauríem pogut fer sudo su postgres, i ens demana el password de joan. No cal passar per root&lt;br /&gt;
&lt;br /&gt;
Fixar-se que per connectar-nos com a postgres primer hem hagut de ser root.&lt;br /&gt;
&lt;br /&gt;
''Postgres'' és un usuari, i per defecte també és grup (tots els usuaris per defecte tenen un grup igual que el username). Incloc com a membres del gru postgres els usuaris root i joan.&lt;br /&gt;
&lt;br /&gt;
Una possibilitat per no fer totes aquestes martingales és ficar un password a l'usuari postgres:&lt;br /&gt;
  $ sudo passwd postgres&lt;br /&gt;
i aleshores ja podem fer ''su postgres'' sense haver de passar per el root o el super-admin (sudo)&lt;br /&gt;
&lt;br /&gt;
Hem pogut connectar-nos a Postgres amb l'opció més senzilla: psql. Per defecte vol connectar-se a la base de dades postgres amb el usuari de Postgres postgres. Com que existeixen, la comanda ''psql'' sola funciona. Ara bé, la forma més general és&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ psql -h localhost -p 5432 -U postgres -d postgres&lt;br /&gt;
postgres=&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
on especifico la base de dades a la que vull connectar-me i l'usuari (de Postgres) amb el que vull connectar-me.&lt;br /&gt;
&lt;br /&gt;
La comanda ''su'' s'utilitza per tal que un usuari pugui connectar-se temporalment com un altre usuari. Ara bé, en el nostre cas, com que l'usuari ''postgres'' no existeix, ''su postgres'' significa que volem que l'usuari ''joan'' agafi el rol de l'usuari ''postgres''. Però per fer-ho ho he de fer com a super-admin. Per tant:&lt;br /&gt;
 joan# sudo su postgres &lt;br /&gt;
 postgres#&lt;br /&gt;
&lt;br /&gt;
Per assignar un password a l'usuari postgres (en el procés d'instal.lació es crea l'usuari ''postgres'' sense password)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postgres=&amp;gt; ALTER USER postgres WITH ENCRYPTED PASSWORD 'secret';&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
o ens connectem a la bd postgres (que existeix per defecte)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ psql -h localhost -p 5432 -U postgres -d postgres&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
podem crear una base de dades (compte amb el charset que utilitzem)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE DATABASE gugel encoding='LATIN1';&lt;br /&gt;
$ psql -h localhost -p 5432 -U postgres -d gugel&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===creació d'usuaris===&lt;br /&gt;
Si volem connectar-nos amb un altre usuari que no sigui el postgres, l'haurem de crear (respondre que sí a tot) i assignar-li un pwd. Hi ha dues maneres de fer, que són equivalents:&lt;br /&gt;
&lt;br /&gt;
*'''primera''': comanda ''createuser'' que executa l'usuari postgres del SO&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
joan@ubuntu:~$ sudo bash&lt;br /&gt;
root@ubuntu:~# su postgres&lt;br /&gt;
postgres@ubuntu:/home/joan$ createuser pere5&lt;br /&gt;
Shall the new role be a superuser? (y/n) y&lt;br /&gt;
CREATE ROLE&lt;br /&gt;
$ psql -h localhost -p 5432 -U postgres -d postgres&lt;br /&gt;
postgres# ALTER USER pere5 WITH ENCRYPTED PASSWORD 'pere5';&lt;br /&gt;
ALTER ROLE&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
fixem-nos que per connectar-nos a postgres ho he de fer des de root, perquè no té password assignat&lt;br /&gt;
&lt;br /&gt;
*'''segona''': comanda ''CREATE USER'' que executa l'usuari postgres de Postgres:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ psql -h localhost -p 5432 -U postgres -d postgres&lt;br /&gt;
postgres=&amp;gt; CREATE USER pere6;&lt;br /&gt;
ROLE CREATED&lt;br /&gt;
postgres=&amp;gt; ALTER USER pere6 WITH ENCRYPTED PASSWORD 'pere6';&lt;br /&gt;
ALTER ROLE&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
També es podia fer:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postgres=&amp;gt; CREATE USER pere6 WITH ENCRYPTED PASSWORD 'pere6';&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aquests usuaris són usuaris de postgres (ROLE CREATED), no del SO&lt;br /&gt;
&lt;br /&gt;
i ara ja puc connectar-me a un d'aquests usuaris:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ psql -h localhost -p 5432 -U pere6&lt;br /&gt;
$ #error! es pensa que em vull connectar a una bd que es diu pere6, que no existeix (és recomanable utilitzar l'opció -d)&lt;br /&gt;
$ psql -h localhost -p 5432 -U pere6 postgres&lt;br /&gt;
postgres=&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configurar els arxius pg_hba.conf i postgresql.conf==&lt;br /&gt;
&lt;br /&gt;
els fitxers es troben dins de /etc/postgresql/8.2/main&lt;br /&gt;
&lt;br /&gt;
*postgresql.conf&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#port = 5432&lt;br /&gt;
listen_addresses = '*'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*pg_hba.conf&lt;br /&gt;
si hi ha problemes hem de donar permisos sobre l'arxiu (chmod a+rw pg_hba.conf).&lt;br /&gt;
&lt;br /&gt;
a+rw vol dir donar els permisos de lectura i escriputra a tothom (a: user, group, root)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# All IPv4 connections from localhost&lt;br /&gt;
&lt;br /&gt;
host all all 0.0.0.0 0.0.0.0 password&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
i reiniciem el servei:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
joan@ubuntu:/etc/init.d$ sudo ./postgresql-8.2 restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Accedir des de la xarxa==&lt;br /&gt;
&lt;br /&gt;
des de l'equip remot accedim a la bd del servidor:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ psql -h 192.168.1.130 postgres&lt;br /&gt;
postgres=&amp;gt; \c gugel&lt;br /&gt;
gugel#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des de la línia de comandes del postgres també podem canviar la connexió&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postgres=&amp;gt; \c  postgres pere6 localhost 5432&lt;br /&gt;
You are now connected to database &amp;quot;postgres&amp;quot;.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
o bé&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postgres=&amp;gt; \c  postgres pere6 192.168.1.130 5432&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
També:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# GRANT ALL PRIVILEGES ON DATABASE yourdatabase TO youruser;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Començar a treballar==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postgres =&amp;gt; CREATE DATABASE socrathos WITH ENCODING='LATIN1' OWNER=socrathos;&lt;br /&gt;
postgres =&amp;gt; &lt;br /&gt;
grant all privileges on database socrathos to socrathos;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anem a executar el script de creació de les taules:&lt;br /&gt;
&lt;br /&gt;
fico el script creacio_taules.txt a /home/joan/Documents&lt;br /&gt;
&lt;br /&gt;
em connecto a la base de dades socrathos:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
postgres =&amp;gt;\c socrathos socrathos localhost 5432&lt;br /&gt;
socrathos=&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des de la línia de comandes de la base de dades socrathos&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
socrathos=&amp;gt; \i /home/joan/Documents/creacio_taules.sql&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
i funciona!!&lt;br /&gt;
&lt;br /&gt;
==Instal.lació des de les fonts (versió 8.4.7)==&lt;br /&gt;
Em descarrego el fitxer postgresql-8.4.7.tar.gz, tot i que ja hi ha disponible la versió 9 (febrer 2011). Descomprimeixo i llegeixo el fitxer INTALL. Segueixo les instruccions curtes.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure&lt;br /&gt;
gmake&lt;br /&gt;
su&lt;br /&gt;
gmake install //he utilitzat make i també ha funcionat&lt;br /&gt;
adduser postgres&lt;br /&gt;
mkdir /usr/local/pgsql/data&lt;br /&gt;
chown postgres /usr/local/pgsql/data&lt;br /&gt;
su - postgres&lt;br /&gt;
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data&lt;br /&gt;
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data &amp;gt; /home/joan/logs_postgreslogfile 2&amp;gt;&amp;amp;1 &amp;amp; //l'usuari postgres ha de tenir permisos en la carpeta per escriure el logfile. Amb aquesta instrucció arrenca pròpiament la base de dades. És l'equivalent a /etc/init.d/postgresql start, que executaria la sentència anterior&lt;br /&gt;
-&lt;br /&gt;
/usr/local/pgsql/bin/createdb test //encara no existia cap base de dades. En creo una&lt;br /&gt;
/usr/local/pgsql/bin/psql test&lt;br /&gt;
&lt;br /&gt;
test#&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
En el configure m'ha demanat un parell de llibreries que he hagut d'instal.lar (seguint el procés habitual, es busca la llibreria pel synaptic si no sé segur com es diu, i s'ha d'instal.lar el paquet -dev).&lt;br /&gt;
&lt;br /&gt;
Compilo amb make en comptes de gmake, i funciona. Un cop acabada la instal.lació falta la configuració:&lt;br /&gt;
&lt;br /&gt;
1. crear l'usuari postgres: adduser postgres&lt;br /&gt;
&lt;br /&gt;
2. crear el directori per les dades ($ mkdir /usr/local/pgsql/data) i fer que el propietari sigui l'usuari postgres ($ chown postgres /usr/local/pgsql/data)&lt;br /&gt;
&lt;br /&gt;
3. /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
INITDB(1)               PostgreSQL Server Applications               INITDB(1)&lt;br /&gt;
&lt;br /&gt;
NAME&lt;br /&gt;
       initdb - create a new PostgreSQL database cluster&lt;br /&gt;
&lt;br /&gt;
SYNOPSIS&lt;br /&gt;
       initdb [ option... ]   [ --pgdata  ]  [ -D  ] directory&lt;br /&gt;
&lt;br /&gt;
DESCRIPTION&lt;br /&gt;
       initdb creates a new PostgreSQL database cluster. A database cluster is&lt;br /&gt;
       a collection of databases that are managed by a single server instance.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
4. /usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data &amp;gt; /home/joan/logs_postgres/logfile 2&amp;gt;&amp;amp;1. Ara el que faig és arrencar la base de dades dient en quin directori tinc el cluster. No he d'esperar arrencar mitjançant /etc/init.d/postgres start, perquè això ho fa el paquet debian (quan debianitzem la instal.lació del postgres). Aquest és el mètode general Linux, independent de la distribució.&lt;br /&gt;
&lt;br /&gt;
5. Creo una base de dades (encara no n'existeix cap): /usr/local/pgsql/bin/createdb test&lt;br /&gt;
&lt;br /&gt;
6. Ja puc entrar: /usr/local/pgsql/bin/psql test&lt;br /&gt;
&lt;br /&gt;
A partir d'aquí puc fer altres coses, com donar permisos a l'usuari joan per arrencar Postgres, ficar el binari ''psql'' en el $PATH, donar un password a l'usuari ''postgres'', crear la base de dades postgres p d'altres, tocar els fitxers postgresql.conf i pg_hba.conf per permetre connexions des de màquines que no siguin localhost, etc.&lt;br /&gt;
&lt;br /&gt;
{{Autor}}, octubre 2008, febrer 2011&lt;br /&gt;
&lt;br /&gt;
Si us plau, tingueu en compte que totes les contribucions al projecte Wikijoan poden ser corregides, alterades o esborrades per altres usuaris. Si no desitgeu la modificació i distribució lliure dels vostres escrits sense el vostre consentiment, no els poseu ací.&lt;br /&gt;
A més a més, en enviar el vostre text, doneu fe que és vostra l'autoria, o bé de fonts en el domini públic o altres recursos lliures similars (consulteu Wikijoan:Drets d'autor per a més detalls). No feu servir textos amb drets d'autor sense permís!&lt;br /&gt;
&lt;br /&gt;
Resum: &lt;br /&gt;
 Aquesta és una modificació menor  Vigila aquesta pàgina&lt;br /&gt;
Desa la pàgina Mostra una previsualització  Mostra els canvis Anuŀla | Ajuda (obre en una nova finestra)&lt;br /&gt;
Aquesta pàgina fa servir la següent plantilla:&lt;br /&gt;
&lt;br /&gt;
Plantilla:Autor (modifica) (semiprotegida)&lt;br /&gt;
pàgina modifica historial elimina reanomena desprotecció&lt;br /&gt;
Joan discussió preferències llista de seguiment contribucions finalitza la sessió&lt;br /&gt;
navegació&lt;br /&gt;
Pàgina principal&lt;br /&gt;
Joan Quintana&lt;br /&gt;
Joanillo Blog&lt;br /&gt;
ies jaume balmes&lt;br /&gt;
DAW-M06-WEC&lt;br /&gt;
ASIX-M09-IAW&lt;br /&gt;
ASIX-M10-UF2&lt;br /&gt;
Extraescolar Robòtica 16-17&lt;br /&gt;
Restful API (temperatures)&lt;br /&gt;
màquines recreatives&lt;br /&gt;
Màquines Recreatives&lt;br /&gt;
RetroPlaneta&lt;br /&gt;
cnc&lt;br /&gt;
CNC&lt;br /&gt;
Projectes CNC&lt;br /&gt;
informàtica musical&lt;br /&gt;
Informàtica musical&lt;br /&gt;
Ubuntu Studio&lt;br /&gt;
Projectes musicals&lt;br /&gt;
50 Ways to Play...&lt;br /&gt;
joanillo.org planet&lt;br /&gt;
RetroPlaneta Arcade&lt;br /&gt;
Espai Balena Coworking&lt;br /&gt;
LangTrainer&lt;br /&gt;
Arthropoda&lt;br /&gt;
GPS Routes&lt;br /&gt;
cerca&lt;br /&gt;
&lt;br /&gt;
 Vés-hi   Cerca&lt;br /&gt;
eines&lt;br /&gt;
Què hi enllaça&lt;br /&gt;
Seguiment d'enllaços&lt;br /&gt;
Carrega&lt;br /&gt;
Pàgines especials&lt;br /&gt;
Powered by MediaWiki&lt;br /&gt;
Política de privadesa Quant al projecte Wikijoan Avís general&lt;/div&gt;</summary>
		<author><name>Joan</name></author>
		
	</entry>
</feed>