【问题标题】:Configure a remote sqlite3 database on rails在 rails 上配置远程 sqlite3 数据库
【发布时间】:2014-08-30 15:02:40
【问题描述】:

我使用 Rails 编写了一个应用程序,我可以将它部署在单台机器上。它使用在本地机器上创建的 sqlite3 数据库。

现在我需要将该数据库放在另一台机器上,但我不知道如何。我在另一台机器和 sqlite3 上安装了 rails 环境。我这样配置了 database.yml 文件:

development:
  adapter: sqlite3
  database: db/development.sqlite3
  host: 172.**.**.**
  pool: 5
  timeout: 10000
  username: username
  password: password

但是什么也没发生。我需要在另一台机器上配置一些东西吗?我错过了什么吗?对不起,如果我看起来很无知,我是第一次做这样的事情。

【问题讨论】:

  • 你能通过 SSH 连接到数据库机器吗?
  • 是的,我可以毫无问题。
  • Sqlite 是一个基于文件的 DBMS,没有网络服务。但是你可以从这个问题中学到:stackoverflow.com/questions/21571277/…
  • 您是否运行“rake db:migrate”命令?如果是,会在 db 机器中看到任何表吗?
  • 是的。它什么都不做,或者它试图在本地做。

标签: ruby-on-rails ruby database sqlite


【解决方案1】:

开箱即用,不,你不能,实际上SQLite own manual不鼓励:

如果您有许多客户端程序通过 网络,您应该考虑使用客户端/服务器数据库引擎 而不是 SQLite。

你可以看看围绕 SQLite 构建的各种解决方案来解决这个问题here

但是,更好的解决方案是切换到另一个 RDBMS,例如 MySQL 或 Postgresql。它应该不会对您的应用程序产生太大影响(因为 ActiveRecord 很好地将您与 DB 特定指令隔离开来)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多