Приложение Heroku с БД Xeround, как настроить? - PullRequest
1 голос
/ 29 октября 2011

Я пытаюсь настроить приложение Heroku, но использую Xeround DB.Инструкции, которые я нашел, немного сбивают с толку:

http://xeround.com/developers/heroku-cloud-database-mysql/ Я пытаюсь следовать второму пути, создавая БД непосредственно на Xeround.

Мои сомнения:

  • Требуется ли для этого аддон Xeround?По крайней мере, надстройки heroku: add xeround –app xxxx говорит: это дополнение доступно только для выбранных пользователей

  • Для Heroku DATABASE_URL необходимо установить: mysql: // username: password@host: порт / база данных Я видел несколько сообщений с mysql2 и mysql (ни один из них не работал для меня в любом случае).В моем файле gem есть mysql2, 0.2.7 (для Rails 3.0.x)

  • Я могу видеть конфигурацию var ok, но конфигурация Heroku --app xxx по-прежнему показывает SHARED_DATABASE_URL => postgres:// pjyqfgjcbn: .... это нормально?

Тогда из инструкций шаг № 5 действительно сбивает с толку, не ясно, является ли эта часть необязательной или нет (я ожидаюэто).И если он был обязательным, он не указывает, к какому файлу он должен быть добавлен ...

Моя цель - создать свежее приложение Heroku, нажать имеющееся у меня приложение, настроить его на использованиеXeround DB и затем запустите Heroku rake db: schema: load, но независимо от того, что я пытаюсь, я получаю:

rake прервано!В конфигурации базы данных не указан адаптер

Есть идеи, как его настроить?

делают то же самое с Rails 3.0.5, но с некоторыми проблемами и комментариями.Это адаптер MySQL или MySQL?Пример на Xeround о сайте установки: mysql: // имя пользователя: пароль @ хост: порт / база данных

mysql2 - это правильный гем для использования с Rails 3 (mysql 0.2.7 для 3.0.x и последний для 3.1) но имя в URL может быть просто именем, которое они выбрали.Полагаю, твоя работа сработала, но все же ...

Я полагаю, что аддон Xeround Heroku не нужен, верно?heroku addons: add xeround –app xxxx говорит, что надстройка доступна только для выбранных пользователей

И, наконец, с mysql или mysql2 в имени URL-адреса БД, когда я пытаюсь мигрировать, я просто получаю:

грабли прерваны!В конфигурации базы данных не указан адаптер

Задал вопрос Heroku, но ответа пока нет ...

1 Ответ

1 голос
/ 17 января 2012

Я использовал Xeround для нескольких своих приложений, размещенных на Heroku.

У меня нет конкретного опыта работы с Rails.Только Синатра ... Но, надеюсь, это поможет вам.

Я не использую дополнение.Настроить учетную запись через Xeround дешевле.

Подключитесь к ней так же, как к любой базе данных MySQL ....

Строка подключения будет выглядеть так, как вы заявили: mysql:// имя пользователя: пароль @ хост: порт / база данных

Хост / порт предоставляются Xeround в базе данных администратора.Имя базы данных будет тем, что вы настроите в phpMyAdmin.Пользователь / пароль НЕ являются вашими учетными данными Xeround.Это учетные данные, которые вы устанавливаете для этого экземпляра базы данных.

Например ... если ваш ORM - Datamapper ... сделайте что-то вроде этого:

DataMapper.setup(:default, ENV['XEROUND_CONN'])

Или если вы используетеПродолжение:

DB = Sequel.connect(ENV['XEROUND_CONN'])

Затем вам нужно установить переменную XEROUND_CONN (или как вы хотите ее называть).1023 * Предупреждение: Datamapper имеет проблему с Xeround.Datamapper не поддерживает настройку вашего механизма хранения (myisam..etc ..).Xeround использует свой собственный механизм хранения Xeround.Итак ... У меня были проблемы с запуском auto_migrate из-за различий в механизме хранения.

...