我們正在從 rails 5 更新到 rails 6。我們目前正在使用ar_octopusgem 進行資料庫分片。
看起來database shradingrails 6 默認支持 rails 支持。
我已經database.yml像這樣更新了檔案
test:
primary:
adapter: postgresql
database: test
username: postgres
password: root
host: localhost
main:
adapter: postgresql
user: postgres
database: "<%= ENV['API_MAIN_DATABASE_NAME'] %>"
host: "<%= ENV['API_DATABASE_HOST'] %>"
password: "<%= ENV['API_DATABASE_PASSWORD'] %>"
database_tasks: false
replica: false
prediction:
adapter: postgresql
user: postgres
database: "<%= ENV['API_PREDICTION_DATABASE_NAME'] %>"
host: "<%= ENV['API_DATABASE_HOST'] %>"
password: "<%= ENV['API_DATABASE_PASSWORD'] %>"
database_tasks: false
replica: false
onshore:
adapter: postgresql
user: postgres
database: "<%= ENV['API_US_ONSHORE_DATABASE_NAME'] %>"
host: "<%= ENV['API_DATABASE_HOST'] %>"
password: "<%= ENV['API_DATABASE_PASSWORD'] %>"
database_tasks: false
replica: false
如果我運行RAILS_ENV=test rails db:migrate看起來它仍然嘗試在所有資料庫上運行遷移。
database_tasks: false似乎沒有按預期作業。
可能是我遺漏了什么,它不可用rails 6嗎?
我需要在 Rails 7 上才能使用它嗎?
uj5u.com熱心網友回復:
database_tasks: false 似乎沒有按預期作業。可能是我遺漏了一些東西,它在 Rails 6 中不可用嗎?我需要在 Rails 7 上才能使用它嗎?
是的,該database_tasks:選項是7.0由https://github.com/rails/rails/pull/42794添加的
- https://github.com/rails/rails/blob/7-0-stable/activerecord/CHANGELOG.md
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/452371.html
