Differences between revisions 4 and 5
Revision 4 as of 2014-03-23 09:35:51
Size: 6787
Comment: sync with English master
Revision 5 as of 2015-01-24 10:41:37
Size: 6812
Comment: sync with English master
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[PostgreSql|English]] - Italiano - [[ru/PostgreSql|Русский]] -~ ~-[[DebianWiki/EditorGuide#translation|Traduzioni]]: [[PostgreSql|English]] - [[es/PostgreSql|español]] - Italiano - [[ru/PostgreSql|Русский]] -~

Traduzioni: English - español - Italiano - Русский


Introduzione a PostgreSQL

PostgreSQL ha una documentazione d'aiuto completa e ben fatta che dovrebbe essere la prima fonte di informazioni per questo prodotto per database. Questa pagina tratta delle principali differenze rispetto alla generica installazione di PostgreSQL usate da Debian.

Installazione

Pacchetti necessari: postgresql postgresql-client

# apt-get install postgresql postgresql-client

Pacchetti raccommandati:

  • postgresql-doc - documentazione di PostgreSQL
  • pgadmin3 - interfaccia utente grafica per l'amministrazione di PostgreSQL
  • phppgadmin - strumento di amministrazione di PostgreSQL basato sul web

Notare che i linguaggi procedurali sono installati separatamente (plpgsql viene fornito in modo predefinito). Fare ricerche nel database dei pacchetti per trovare un elenco delle possibilità:

# aptitude search postgresql

Accesso utente

Sia l'utente predefinito, sia il database predefinito si chiamano postgres.

Ci si può connettere al database usando il comando seguente.

# su - postgres
$ psql

Nuovi utenti e database

Creare un account per utente di sistema regolare usando adduser (saltare questo passaggio per usare un utente esistente):

#adduser mioutentepg        #dalla shell normale

Connettersi al database

#su - postgres
$psql template1

Creare un nuovo utente del database e un nuovo database:

postgres=# CREATE USER mioutentepg WITH PASSWORD 'miapassutentepg';
postgres=# CREATE DATABASE miodatabasepg OWNER mioutentepg;

oppure

# createuser mioutentepg -W    #dalla shell normale
# createdb -O mioutentepg miodatabasepg

Uscire dal database

postgres=# \q

Connettersi al nuovo database come utente

# su - mioutentepg
$ psql miodatabasepg

oppure

# psql -d miodatabasepg -U mioutentepg

Se si ottengono erori simili a:

psql: FATAL:  Ident authentication failed for user "mioutentepg"

modificare pg_hba.conf in /etc/postgresql/X.Y/main/pg_hba.conf

local   all         all                               trust     #sostituire ident o peer con trust

ricaricare postgresql

# /etc/init.d/postgresql reload

Documentazione

Per ottenere una panoramica sull'architettura PostgreSQL di Debian, istruzioni per iniziare velocemente e suggerimenti su dove trovare i programmi e le pagine man, guardare /usr/share/doc/postgresql-common/README.Debian.gz.

File tutorial

La documentazione di PostgreSQL fa riferimento al tutorial, che è incluso nel pacchetto postgresql-doc. Per ottenere ulteriori informazioni guardare /usr/share/doc/postgresql-doc-[version]/tutorial/README.

Elencare i cluster database esistenti

Usare il comando pg_lsclusters per controllare i cluster installati e ottenere alcune informazioni di base come: versione (versione principale), nome, porta, stato (inlinea o disconnesso), proprietario, directory dei dati e file di registro.

pg_lsclusters

Sostituire pg_ctl

pg_ctl è un programma a riga di comando di controllo per PostgreSQL che può essere usato per controllare il database. Debian ha creato un wrapper Perl per pg_ctl chiamato /usr/bin/pg_ctlcluster. Usare pg_ctlcluster ogni volta che si ha bisogno di pg_ctl. Per personalizzare il suo comportamento controllare /etc/postgresql/[version]/[cluster]/pg_ctl.conf.

Debian installa un script di avvio compatibile con SysV-init (standard): /etc/init.d/postgresql-[versione]. Può essere usato per avviare, fermare, riavviare e ricaricare il sistema. Richiama pg_ctlcluster internamente.

Collocazione dei file

Debian divide la configurazione del database dai file del database, a differenza di un'installazione generica di PostgreSQL che mette tutto nella stessa directory. Notare che Debian permette la coesistenza sullo stesso host di cluster multipli e persino di diverse versioni di PostgreSQL.

File di configurazione: /etc/postgresql/[versione]/[cluster]/
Binari: /usr/lib/postgresql/[versione]
File dati: /var/lib/postgresql/[versione]/[cluster]

File di registro: l'installazione di PostgreSQL crea la directory di registro /var/log/postgresql/. L'avvio del motore del database crea un file di registro chiamato postgresql-[versione]-[cluster].log.

Cambiare l'installazione predefinita in Debian

L'installazione Debian di PostgreSQL richiama automaticamente initdb, cioè inizializza il cluster con la codifica e la localizzazione predefinita. La codifica può essere successivamente cambiata, ma la localizzazione no. Per cambiare la localizzazione (e eventualmente altre opzioni in initdb), cancellare il cluster predefinito esistente e crearne uno nuovo:

  1. Ottenere i privilegi di root.
  2. Eseguire il comando seguente:
    pg_dropcluster --stop <versione> main
    Ad esempio:
    pg_dropcluster --stop 8.3 main
  3. Eseguire initdb con le proprie opzioni. Ad esempio:
    pg_createcluster --locale de_DE.UTF-8 --start 8.3 main

Attenzione!

L'operazione precedente cancella ovviamente tutto ciò che era nei database del cluster. Eseguire questa operazione subito dopo aver installato il pacchetto base. Controllare il manuale di PostgreSQL se è necessario cambiare la localizzazione per un database esistente (non è un'operazione banale).

Controllare la pagina Locale per vedere come aggiungere nuove localizzazioni.

Vedere anche

Collegamenti esterni