2012-05-18 5 views
4

나는 pg_search와 queue_classic 젬을 포함하는 Rails 애플리케이션을 가지고있다. 이 두 가지 모두 PostgreSQL 확장 (예 : unaccent, pg_trgm 및 ps-something-something)을 사용합니다 (미안하지만 내 dev 컴퓨터가 아니고 기억이 안납니다).Heroku에서 postgres extensions을 사용하는 방법은 무엇입니까? 마이그레이션을 처리하는 방법은 무엇입니까?

나는이 확장 예를 들어

,

def up 
    execute "create extension unaccent" 
    execute "create extension pg_trgm" 
end 

내가 Heroku가 여기 https://devcenter.heroku.com/articles/full-text-search에서 이들을 지원하는 느낌과 그 사실을받을 exceute 내 마이그레이션을 실행에게 Heroku에 배포하고, 문제가있어 Heroku가 queue_classic https://github.com/ryandotsmith/queue_classic을 사용합니다.

나는 이러한 포스트그레스 확장을 Heroku에서 사용하는 방법을 설명하는 정보를 찾을 수 없었습니다. 또는 공유 데이터베이스에 사용할 수 있거나 전용 데이터베이스 일 수도 있습니다.

그래서 내 질문 :

  1. 어떻게 Heroku가 내 응용 프로그램에 이러한 확장을 사용할 수 있도록?
  2. 이러한 확장을 및 테스트 환경에서 사용할 수 있도록 마이그레이션을 처리하지만 Heroku가 이러한 종류의 실행을 제한하는 경우에는 준비 또는 프로덕션 환경에서 마이그레이션을 중단하지 마십시오.

특히 관련 정보/지침을 알려주는 아이디어가 있으면 감사하겠습니다.

감사

답변

4

당신이 다음이 아마 당신이 new shared plans 또는 production plans까지 해주 볼 필요가 그렇게 작동하지 않습니다 기존의 표준 공유 데이터베이스 계획을 사용하는 경우.

+0

감사합니다. 닐 감사합니다. 9.1이 필요합니다. 헤로 쿠의 세부 사항에 대해 아십니까? 즉, 확장을 생성하기 위해 이러한 마이그레이션을 실행해야합니까? 그들은 단순히 기본적으로 사용할 수 있습니까? 시도 할 수는 있지만 문서가 없다는 것에는 여전히 놀랐습니다. 이것은 아주 공통적 인 필요가 있어야합니다 ...? –

+0

이 모든 것들은 여전히 ​​꽤 새롭고 많은 PG9 항목은 여전히 ​​베타 버전입니다. 현재 계획에서 확장을 사용하려면 마이그레이션을 실행해야한다고 생각합니다. –

+0

감사합니다. Neil,이 기능은 훌륭했습니다. 내 응용 프로그램을 새 데이터베이스'heroku addons : heroku-postgresql : dev'를 추가 한 다음 9.1을 기본 'heroku pg : promote HEROKU_POSTGRESQL_PURPLE'으로 설정해야했습니다. 다른 경우에 데이터베이스 이름이 다른지 확실하지 않습니다. 'heroku pg : info'로 이름을 확인할 수 있습니다. –

관련 문제