Не удается использовать uuid и создать расширение для его использования
Я хочу использовать uuid в Postgresql 9.2 на Ubuntu 13. Поэтому, когда я попытался проверить, доступен ли он или нет, я сделал:
select uuid_generate_v4() as one;
и это дало мне ERROR: function uuid_generate_v4() does not exist
тогда я сделал CREATE EXTENSION "uuid-ossp";
ERROR: could not open extension control file "/usr/share/postgresql/9.2/extension/uuid-ossp.control": No such file or directory
Ну, что мне делать дальше?
кстати, SELECT * FROM pg_available_extensions;
возвращает plpsql (1.0)
только.
3 ответов
пакет операционной системы, содержащий расширение, не установлен. Чтобы установить его:
apt-get install postgresql-contrib-9.2
для тех, кто с помощью менеджер версий asdf С ASDF-postgres плагин, установка версий postgres следующим образом устраняет эту проблему:
POSTGRES_EXTRA_CONFIGURE_OPTIONS=--with-uuid=e2fs asdf install postgres <VERSION>
Если вы все еще получаете ошибку, попробуйте вручную запустить два файла SQL внутри /usr/share/postgresql/9.X/extension/uuid-ossp*.sql
в базу данных