从 rails 5 迁移到 rails 6
migrating from rails 5 to rails 6
我们正在从 rails 5 更新到 rails 6。我们目前正在使用 ar_octopus
gem 进行数据库分片。
看起来 rails 默认支持 database shrading
从 rails 6.
我已经像这样更新了 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 上才能使用吗?
database_tasks: false does not seem to work as intended. may be i am missing something, is it not available in rails 6? do i need to be on rails 7 for this to be available?
是的,database_tasks:
选项是由 https://github.com/rails/rails/pull/42794
在 7.0
中添加的
我们正在从 rails 5 更新到 rails 6。我们目前正在使用 ar_octopus
gem 进行数据库分片。
看起来 rails 默认支持 database shrading
从 rails 6.
我已经像这样更新了 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 上才能使用吗?
database_tasks: false does not seem to work as intended. may be i am missing something, is it not available in rails 6? do i need to be on rails 7 for this to be available?
是的,database_tasks:
选项是由 https://github.com/rails/rails/pull/42794
7.0
中添加的