我想从我的rails应用程序运行db:migrate。无法在postgresql中运行“create extension hstore”
迁移文件:
def self.up
enable_extension "hstore"
end
def self.down
disable_extension "hstore"
end
错误:
-- enable_extension("hstore")
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:PG::UndefinedFile: ERROR: could not open extension control file "/usr/pgsql-9.4/share/extension/hstore.control": No such file or directory : CREATE EXTENSION IF NOT EXISTS "hstore"/gems/activerecord-4.2.0/lib/active_record/connection_adapters/postgresql_adapter.rb:592:in `async_exec'
postgres=# select version(); ==> PostgreSQL 9.4.4 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11), 64-bit
(1 row)
关于这个问题搜索后,我发现了 'hstore' 依赖可以使用PostgreSQL-的contrib来解决。我添加了postgresql-contrib,但仍然没有用。
yum install postgresql ==> Package postgresql-8.4.20-2.el6_6.x86_64 already installed and latest version
yum install postgresql-contrib ==> Package postgresql-contrib-8.4.20-2.el6_6.x86_64 already installed and latest version
这些软件包似乎适用于Postgres 8.4。试试'yum install postgresql94-contrib'。 –
谢谢!有效。 – user3139250
@NickBarnes,请发表您的评论作为答案。所以我可以upvote。它确实有帮助。 –