31

Sto provando a configurare PostgreSQL per utilizzare la ricerca fulltext nella mia app per rails come menzionato in questo Railscast.Errore durante la creazione di un'estensione non protetta su PostgreSQL

Sto usando un server di Ubuntu 12.04 fresca in esecuzione PostgreSQL 9.1.5 installato utilizzando apt-get con la ppa:pitti/postgresql con precise.

ottengo il seguente errore quando si tenta di eseguire la migrazione e quando provo lo stesso comando nella console psql con l'utente postgres pari:

postgres=# CREATE EXTENSION unaccent; 

ERROR: could not open extension control file "/usr/share/postgresql/9.1/extension/unaccent.control":
No such file or directory

Nella mia casella di locale che esegue Ubuntu 10.04 desktop io uso lo stesso repository (natty) e funziona bene.

Eventuali approfondimenti sarebbero molto apprezzati.

risposta

54

È necessario installare il pacchetto postgresql-contrib-9.1 nel sistema prima (adattarsi al vostro numero di versione). Questo è il caso in Debian, Ubuntu & amici comunque. Utilizzando un utente di sistema con i privilegi necessari:

apt-get install postgresql-contrib-9.1 

Se il vostro utente attualmente connesso non dispone dei privilegi necessari (ma sudo diritti):

sudo apt-get install postgresql-contrib-9.1 

citando il PostgreSQL Apt Repository:

If the version included in your version of Debian is not the one you want, you can use the PostgreSQL Apt Repository.

Ci sono basic install instructions on the Postgres website per ann. SO disponibile.

Per gli indici di accento-insensitive che utilizzano unaccent prendere in considerazione questa domanda relativa:

+2

Fedora Users: '' 'yum install postgresql-contrib' '' – zznq

+2

Per me ha lavorato con 'sudo apt-get install postgresql-contrib' –

+0

@AlterLagos: necessario 'sudo', se il tuo utente attualmente loggato non ha i privilegi necessari (ma i diritti 'sudo'). –

6

su CentOS:

sudo yum install postgres*contrib 
+0

L'ho appena provato su Centos 6.4 e ho ricevuto questo messaggio: "Nessun pacchetto postgres * contributo disponibile". –