Ошибка при создании unaccent расширения на PostgreSQL

Я пытаюсь настроить PostgreSQL для использования полнотекстового поиска в моем приложении rails, как упомянуто в этом Railscast.

Я использую свежий Ubuntu 12.04 сервер работает PostgreSQL 9.1.5 установлен с помощью apt-get с ppa:pitti/postgresql с precise,

Я получаю следующую ошибку при попытке запустить миграцию и при попытке выполнить ту же команду в консоли psql с пользователем peer postgres:

postgres=# CREATE EXTENSION unaccent;

ОШИБКА: не удалось открыть файл управления расширением "/usr/share/postgresql/9.1/extension/unaccent.control":
Данный файл или каталог отсутствует

В моей местной коробке работает Ubuntu 10.04 desktop Я использую тот же репозиторий (natty) и это хорошо работает.

Любая идея будет принята с благодарностью.

2 ответа

Решение

Вам необходимо установить пакет postgresql-contrib-9.1 сначала в вашей системе. (Адаптируйтесь к номеру своей версии! Вот список доступных на данный момент пакетов.) Это в любом случае относится к Debian, Ubuntu и друзьям. Использование системного пользователя с необходимыми привилегиями:

apt-get install postgresql-contrib-9.1

Если ваш пользователь, вошедший в данный момент, не имеет необходимых прав (но sudo права):

sudo apt-get install postgresql-contrib-9.1

Цитирование репозитория PostgreSQL Apt:

Если версия, включенная в вашу версию Debian, не та, которую вы хотите, вы можете использовать PostgreSQL Apt Repository.

На веб-сайте Postgres есть основные инструкции по установке для каждой доступной ОС.

Для нечувствительных к акценту индексов, использующих unaccent рассмотрим этот связанный вопрос:

На CentOS:

sudo yum install postgres*contrib
Другие вопросы по тегам