【问题标题】:Where is the database file? Rails [duplicate]数据库文件在哪里?导轨[重复]
【发布时间】:2013-08-16 17:48:08
【问题描述】:

我是 Rails 的新手,我刚刚完成了我正在开发的应用程序的一部分,我想知道数据库文件在哪里,我在 rails.root 目录中找不到它。有人知道答案吗?

提前致谢。

编辑:我搜索的是文件而不是配置文件,我使用的是 PostgreSQL 和 Ubuntu

【问题讨论】:

  • “数据库文件”对 PostgreSQL 来说意义不大。如果要复制数据库,则需要转储/恢复而不是尝试复制文件。

标签: ruby-on-rails ruby postgresql


【解决方案1】:

数据库配置文件位于config/database.yml

如果您使用的是sqlite,则数据库本身位于db/ 文件夹中。

您可能想阅读Getting Started with Rails 了解更多信息。

编辑:对于 PostgreSQL,您可以在 psql 中执行 SHOW data_directory 以查找数据库文件位置。

编辑 (CR):请注意,您不能只是 复制 数据目录。阅读the PostgreSQL manual on backup and restore,了解如何正确复制数据库。

来源:https://askubuntu.com/questions/197626/where-is-a-postgresql-9-1-database-stored-in-ubuntu-12-04

【讨论】:

  • database.yml 文件描述了数据库名称和登录信息等,但通常不会给出实际数据库文件的路径。这些由数据库程序维护。
  • @mbratch 是的,我不确定 OP 是否要求实际的 db 文件本身(取决于数据库),或者只是 database.yml 文件的位置...
  • 嗨,我正在搜索数据库文件,而不是 databse.yml
  • 操作系统:Ubuntu 13.04,数据库 PostgreSQL
  • @MarcPursals This question 应该可以帮到你。
【解决方案2】:

对于 postgres,db 目录中没有 db 文件,就像 sqlite3 一样,例如 development.sqlite3、test.sqlite3。但是,db/migrate 中会有迁移。 rails 使用 config/database.yml 文件中的信息连接到 postgres,然后您的数据存储在 postgres 中,即在您的应用程序之外。例如,在 Postgres/9.2/data 目录中。

我刚刚在本地安装了用于 rails 的 postgres,我将我所做的一切都写在了两篇文章中,这可能对你有用。见这里:

How do I get my rails app to use my postgresql db?

How do I start enterpiseDB PostgreSQL on Mac OSX 10.6.8?

ubuntu 是 Linux 而 Mac OSX 是建立在 unix 之上的,所以它们是相似的。但是,您的 postgres 安装目录将与我的不同,因此请注意这一点。

【讨论】:

  • 感谢您的宝贵时间。
【解决方案3】:

这完全取决于您使用的数据库程序。 Rails 不管理数据库文件的位置,但数据库程序会。

以 MySQL 为例,它们在 Fedora 上位于 /var/lib/mysql 下。

【讨论】:

    【解决方案4】:

    如果你使用 sqlite,你运行 rake db:create 它将在

    RAILS_ROOT/db/development.sqlite3

    【讨论】:

      猜你喜欢
      • 2010-10-12
      • 2010-11-09
      • 2011-09-17
      • 2011-01-06
      • 1970-01-01
      • 1970-01-01
      • 2014-02-16
      • 1970-01-01
      • 2012-04-27
      相关资源
      最近更新 更多