![](/img/trans.png)
[英]Is it possible to connect single Heroku-RedisToGo from 2 different Heroku instances?
[英]Connect to sqlserver from heroku
我有一個遠程SQLSERVER實例,我想從heroku上托管的Rails應用程序進行連接。 我的gemfile:
gem 'activerecord-sqlserver-adapter', '~> 3.2.12'
gem 'tiny_tds'
數據庫
production:
adapter: sqlserver
mode: dblib
dataserver: host.database.windows.net
database: items
username: username@host
password: password
azure: true
production.rb
dbconfig = YAML.load(ERB.new(File.read(File.join("config","database.yml"))).result)
ActiveRecord::Base.establish_connection dbconfig['production']
但是在部署過程中出現以下錯誤:
編寫config / database.yml以讀取DATABASE_URL
Preparing app for Rails asset pipeline
Running: rake assets:precompile
rake aborted!
LoadError: Please install the sqlite3 adapter: `gem install activerecord-sqlite3-adapter` (sqlite3 is not part of the bundle. Add it to Gemfile.)
似乎活動記錄需要sqlite3,但如果我有tiny_tds,則應使用sql server。
在開發環境中,一切正常。 當然,我缺少一些東西。
更新
我已經設置了自定義buildpack BUILDPACK_URL: https : //github.com/firmhouse/heroku-buildpack-ruby-freetds.git和DATABASE_URL配置變量。
更新2
在展開時使pp的dbconfig var顯示
{"production"=>
{"adapter"=>"sqlite3",
"database"=>"dbname",
"username"=>"user",
"password"=>"pass",
"host"=>"127.0.0.1"}}
似乎heroku覆蓋了我的database.yml文件,有什么建議嗎?
更新3
我已設置DATABASE_URL = sqlserver // user:pass @ host:1433 / database這是錯誤的嗎?
我遇到了同樣的問題,終於找到了答案。
您必須在下面加上后綴:
?encoding = uft-8&azure = true
因此,您的database_url將如下所示:
sqlserver:// [用戶]:[密碼] @ [server.database.windows.net]:1433 / [數據庫]?encoding = uft-8&azure = true
希望能幫助到你
看來您需要使用自定義buildpack 。
在Heroku上使用此FreeTDS buildpack
要使用此buildpack,可以在創建Heroku應用程序時傳遞一個選項:
heroku create my_new_sqlserver_app --buildpack https://github.com/firmhouse/heroku-buildpack-ruby-freetds.git
或對於當前的應用程序:
heroku config:add BUILDPACK_URL=https://github.com/firmhouse/heroku-buildpack-ruby-freetds.git
配置數據庫連接
創建您的應用程序或設置您現有的應用程序以使用buildpack后,您需要修改
DATABASE_URL
配置變量以指向您的sqlserver實例。 我們當前使用的是SQL Server 2008 Express版本:heroku config:add DATABASE_URL=sqlserver://username:password@sqlserver_host:1433/database_name
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.