2014-09-24 69 views
3

我使用Heroku來託管一個簡單的Ruby on Rails測試應用程序,以瞭解如何使用Redis。我使用RedisCloud作爲我的Redis servis提供程序。在本地,我可以使用Redis CLI檢查我的Redis數據庫,但是如何檢查我的Heroku應用程序正在使用的RedisCloud數據庫中的數據?如何遠程檢查我的RedisCloud數據庫中的數據?

RedisCloud提供了一個顯示統計信息但不是實際數據的儀表板。另外,我嘗試過使用Redis Desktop Manager軟件,但它有太多的錯誤讓我可以遠程連接到我的RedisCloud數據庫。

回答

10

循序漸進:

1 - 檢查你的Heroku的配置,以找出Redis的URL。

heroku config 

你應該看到的入口看起來像這樣:

REDISCLOUD_URL:    redis://rediscloud:[email protected]:18888 

2 - 使用redis-cli連接到遠程的Redis數據庫:

redis-cli -h a-redis-address -p 18888 -a foobarfoobarfoobar 

你應該能夠查詢您的Redis DB現在。

+4

既然你已經在雲端,我建議你看看Redsmin(http://redsmin.com) - 我們很多用戶覺得它非常寶貴:) – 2014-09-24 17:07:34

+1

@ItamarHaber我一定會這麼做的!真的很酷。 – Nobita 2014-09-24 17:08:32

1

由於您使用Rails,你也可以連接到Rails的控制檯是這樣的:

$ heroku run console 

連接後,你會根據您的配置(例如,有一個初始化的Redis連接你在config/initializers/redis.rb$redis = Redis.new(url: ENV["REDISCLOUD_URL"]) ):

irb(main):001:0> $redis 
=> #<Redis client v3.2.1 for redis://domain.com/0> 

或者,你可以做一個新的:

irb(main):002:0> $redis2 = Redis.new(url: 'redis://domain.com') 
irb(main):003:0> $redis2 
=> #<Redis client v3.2.1 for redis://domain.com/0>