2013-03-03 2 views
46

저는 Heroku를 처음 사용하고 MySQL 데이터베이스를 주 데이터 저장소로 사용할 계획 인 Ruby/Sinatra 앱이 있습니다.Heroku에 로컬 MySQL 데이터베이스를 배포하는 방법

그러나 Heroku의 데이터베이스에 결과를 직접 쓰고 싶지는 않습니다. 대신 로컬 데이터베이스에 결과를 기록한 다음 로컬 데이터베이스를 Heroku의 "프로덕션"데이터베이스에 쉽게 배포/업데이트/복사 할 수 있습니다.

어떻게하면됩니까?

감사합니다.

답변

45

먼저 헤로 쿠는 기본적으로 포스트그레스를 사용합니다. 그걸 로컬로 사용하면 인생이 더 쉬워 질 것입니다. https://devcenter.heroku.com/articles/heroku-postgres-import-export

당신이 정말로 MySQL을 사용하려는 경우에 따라 두 가지 경로가 : 여기에 설명 된대로

당신은 가져올 수 있습니다

는/내보내기 포스트 그레스는 Heroku가 파일을 덤프.

1) mysql2psql 보석을 사용하여 Heroku가로 마이그레이션 할 때 여기에 설명 된 바와 같이, MySQL을 로컬로 실행하지만, 포스트 그레스로 변환 : 내 추천하는 것입니다 그러나 https://devcenter.heroku.com/articles/heroku-mysql

2) https://addons.heroku.com/cleardb

같은 MySQL의 부가 기능을 사용하여 포스트 그레스는 헤로 쿠에 구운대로 끝에서 끝까지 사용하십시오. 헤로 쿠를 사용하는 기본 방법으로 일하게 될 것입니다.

Postgres도 매우 좋습니다!

+0

안녕하세요 Dan, 예, 나는 cleardb addon을 사용하고 있습니다. 내가 postgres를 사용한다면 가져 오기/내보내기가 내 데이터베이스를 덮어 쓸 것인가? 또한 DB에 직접 연결하여 글을 쓸 수있는 postgres 루비 보석이 있다고 추측합니다. – Ken

+0

가져 오기/내보내기가 덮어 씁니다. 솔직히 말해서 "당신이 의미하는 바가 확실하지 않습니다."대신 로컬 데이터베이스에 결과를 기록한 다음 로컬 데이터베이스를 Heroku의 "프로덕션"데이터베이스에 쉽게 배포/업데이트/복사 할 수 있습니다. 나는 당신이 데이터를 로컬로 생성 한 다음 그것을 Heroku로 옮기는 것을 의미하지만 아마도 당신은 다른 것을 의미 할 것입니다. – DanSingerman

+0

좋습니다. 가져 오기/내보내기를 사용하는 대신 DB를 읽고 쓰고 싶다면 'pg'보석을 사용하여 연결을 만들 수 있습니까? 맞습니까? 'pg'gem을 읽고 쓰는 데 좋은 예제를 찾을 수 없습니다. 어떤 제안이라도 대단히 감사하겠습니다! – Ken

관련 문제