将Cloud9开发环境的数据库更改为PostgreSQL的方法

我将介绍如何将Cloud9开发环境的数据库更改为PostgreSQL。

假设已经使用Mysql或Sqlite开发了应用程序,并打算转换到Postgresql。

在我所就读的编程学校中,由于引入成本较低,开发环境使用了Mysql,而生产环境则采用了Postgresql。

因为之前我们亲身经历了在不同环境下出现数据库不一致的情况,所以才决定进行这次尝试。

【Rails】修改或替换数据库的数据类型(Postgresql)

那么,让我把所有的步骤都集中介绍在命令中心。

安装PostgreSQL

sudo yum install postgresql postgresql-server postgresql-devel postgresql-contrib

初始化PostgreSQL。

sudo service postgresql initdb

启动PostgreSQL。

sudo service postgresql start

修改Gemfile。

↓更改前

gem 'mysql2'

↓修改后

gem 'pg'

编辑database.yml文件

MySQL和PostgreSQL有不同的适配器、编码和用户名,所以需要注意。

↓之前的更改

default: &default
  adapter: mysql2
  encoding: utf8
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: root
  password:
  host: localhost

↓更改之后

default: &default
  adapter: postgresql
  encoding: unicode
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: postgres
  password:
  host: localhost

创建数据库

rails db:create

应用迁移

rails db:migrate

如果能够成功应用这个完美的迁移,那就完成了。

辛苦了!

请参考

在Cloud9上如何将Rails的数据库从SQLite切换到PostgreSQL?从设置PostgreSQL到创建和删除数据库。

广告
将在 10 秒后关闭
bannerAds