[英]Use separate DB for delayed_job
我有一種情況,我需要讓delay_job在單獨的數據庫/表上使用自定義后端。
因此,本質上是強制它使用單獨的架構,而不是我的應用程序最初使用的架構。
有關如何執行此操作的任何想法? 提前致謝。
我知道很早以前就已經問過這個問題,但是我面臨着同樣的挑戰,這種簡單的方法對我有用:
剛添加到文件頂部:
require 'delayed_job'
require 'delayed_job_active_record'
class Delayed::Job
establish_connection {"adapter"=>"mysql2",
"host"=>"127.0.0.1",
"username"=>"root",
"password"=>"aaaaa",
"port"=>3306,
"database"=>"users",
"reconnect"=>true,
"pool"=>10}
end
您可以使某些模型連接到不同的數據庫並使用不同的表。
在database.yml
為新數據庫指定配置。
delayed_jobs_db_connection:
adapter: mysql # or any other adapter
database: delayed_jobs_db
username: root
password:
host: localhost
在模型中,可以使用establish_connection
與該數據庫的連接。 您也可以直接在模型中指定所有配置,將其保留在配置中只是一種更好的方法。 希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.