web-dev-qa-db-fra.com

Erreur lors de la création d'une extension non accentuée sur PostgreSQL

J'essaie de configurer PostgreSQL pour utiliser la recherche plein texte dans mon Rails comme mentionné dans ce Railscast .

J'utilise une nouvelle Ubuntu 12.04 serveur en cours d'exécution PostgreSQL 9.1.5 installé à l'aide de apt-get avec le ppa:pitti/postgresql avec precise.

J'obtiens l'erreur suivante lorsque j'essaie d'exécuter la migration et lorsque j'essaie la même commande dans la console psql avec l'utilisateur homologue postgres:

postgres=# CREATE EXTENSION unaccent;

ERREUR: impossible d'ouvrir le fichier de contrôle d'extension "/usr/share/postgresql/9.1/extension/unaccent.control":
Aucun fichier ou répertoire de ce nom

Dans ma boîte locale exécutant Ubuntu 10.04 desktop J'utilise le même dépôt (natty) et ça marche bien.

Toutes les idées seraient grandement appréciées.

35
fagiani

Vous devez installer le package postgresql-contrib-9.1 dans votre système en premier. (Adaptez-vous à votre numéro de version! Voici la liste des paquets actuellement disponibles. ) C'est le cas sous Debian , Ubuntu et amis quand même. Utiliser un utilisateur système avec les privilèges nécessaires:

apt-get install postgresql-contrib-9.1

Si votre utilisateur actuellement connecté ne dispose pas des privilèges nécessaires (mais des droits Sudo):

Sudo apt-get install postgresql-contrib-9.1

Citant le PostgreSQL Apt Repository :

Si la version incluse dans votre version de Debian n'est pas celle que vous souhaitez, vous pouvez utiliser le référentiel Apt de PostgreSQL.

Il y a instructions d'installation de base sur le site Web de Postgres pour chaque système d'exploitation disponible.

Pour les indices insensibles aux accents utilisant unaccent, considérez cette question connexe:

60
Erwin Brandstetter

Sur CentOS:

Sudo yum install postgres*contrib
8
Mingyu