首页 > 解决方案 > 如何打开rails控制台以访问rails 6中的多个数据库?

问题描述

我的项目中有多个数据库,我想打开 rails 控制台来访问这两个数据库。

目前我只能获取一个默认数据库的数据。

换句话说,如何打开特定的数据库控制台?

标签: ruby-on-railsruby-on-rails-6ruby-on-rails-6.1

解决方案


换句话说,如何打开特定的数据库控制台?

来自官方指南

bin/rails dbconsole找出您正在使用的数据库并将您放入您将使用的任何命令行界面(并找出要提供给它的命令行参数!)。它支持 MySQL(包括 MariaDB)、PostgreSQL 和 SQLite3。

您还可以使用别名“db”来调用 dbconsole: bin/rails db

如果您使用多个数据库,bin/rails dbconsole则默认连接到主数据库。--database您可以使用或指定要连接的数据库--db

bin/rails dbconsole --database=animals

所以命令是

rails db --db=db_name_from_database_yml

例如,您在您的database.yml

production:
  my_primary:
    adapter: postgresql
    database: some_db_name

在这种情况下,您的命令将是

bundle exec rails db --db=my_primary -e=production

推荐阅读