【发布时间】:2011-12-27 21:50:18
【问题描述】:
我找到了解释如何从一开始就使用 PostgreSQL 数据库设置 Rails 应用程序的信息。但是我已经构建了一个应用程序。关于将我现有的应用程序更改为使用 PostgreSQL 而不是 SQLite 的步骤有什么建议吗?
【问题讨论】:
标签: mysql ruby-on-rails sqlite postgresql
我找到了解释如何从一开始就使用 PostgreSQL 数据库设置 Rails 应用程序的信息。但是我已经构建了一个应用程序。关于将我现有的应用程序更改为使用 PostgreSQL 而不是 SQLite 的步骤有什么建议吗?
【问题讨论】:
标签: mysql ruby-on-rails sqlite postgresql
在你的 Gemfile 中安装 pg gem
宝石'pg'
更改 database.yml 文件以使用您的数据库 ex.
adapter: postgresql
database: db_name
pool:
timeout:
host: localhost
username: username
password: password
db_name、用户名和密码值也是您为 postgresql 数据库设置的值
【讨论】:
如果您使用的是 Rails 6+,您可以这样做:
rails db:system:change --to=postgresql
postgresql 将是您想要的数据库。
这是由 commit 启用的。
【讨论】:
需要注意的一点是,进行这样的切换不会考虑 SQLite 数据库本身中的任何数据记录,而只会考虑数据库结构。如果您想从一个数据库迁移到另一个数据库,并且您想要将旧数据库中的大量数据带到新数据库中,您可以使用 yaml_db gem。
这将允许您将数据导出到 YAML 转储文件,切换数据库适配器,创建和迁移数据库,然后将 YAML 转储导入新数据库。
实际上,我最近发布了一个YouTube video on this exact topic,以防您像我一样更像是一个视觉学习者。
【讨论】: