Возможно ли иметь приложение Ruby on Rails, которое:
а) развернуто на Heroku и
б) работает с удаленной базой данных SQL Server?
Я так понимаю, мне нужно установить unixODBC на Heroku, но я не могу найти способ сделать это.Это возможно?Или есть какой-нибудь другой способ (без ODBC?) Для этого?
Большое спасибо за любые советы или подсказки.
Обновлено: Некоторыеинформация по теме:
1) Heroku по умолчанию предварительно устанавливает unixODBC и FreeTDS, так что они у вас уже есть.
2) Кроме того, можно запускать команды оболочки через Heroku Consoleв обратных галочках, например:
heroku console
`odbcinst`
(запускает команду "odbcinst" в оболочке Heroku и показывает результат)
3) У вас нет доступа к файловой системе вне вашего слайса, где находятся пакетыустановлены.Если вам нужен только путь к драйверу, поддержка Heroku может предоставить его (/usr/lib/odbc/libtdsodbc.so в моем случае).
4) Вы не можете запускать команды sudo в оболочке Heroku.
На данный момент, чтобы подключиться к MS SQL Server, по крайней мере, вам нужно добавить файл 'freetds.conf'.Даже при использовании tinyTDS (на странице выпуска tinyTDS gitgub есть открытый билет № 2).Инструкции по подключению без DSN от "wiki.rubyonrails.org SLASH: поддержка баз данных SLASH ms-sql" у меня не сработали, я думаю, это соединение требует дополнительной настройки.
'freetds.conf'не может быть изменено без sudo.Поэтому я пришел к выводу, что в настоящее время нет способа заставить MS SQL и Heroku работать вместе.
Мне удалось установить это соединение с EngineYard и activerecord-sqlserver-adapter.
Я следовал этим инструкциям: https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/wiki/Platform-Installation---Ubuntu (есть только некоторые различия в пути к файлу, например, «odbc.ini» находится в «/ etc / unicodbc», а не в «/ etc» - этолегко работать).
Я установил пакеты 'unixODBC' и 'freetds', используя функцию EY Unix Packages, и произвел все конфигурации вручную через SSH.Sudo доступен в EY (пароль не требуется).Также имеется функция Chef Recepes для автоматизации этих конфигураций (кажется, это довольно просто, я собираюсь попробовать это завтра).
Надеюсь, это полезно.