我无意中创建了一个生产数据库。这会破坏已经存在的生产数据吗?

I've unintentionally created a production database. Will this destroy the production data that already exists?

上下文: 我构建了一个正在生产的 rails 应用程序。本来项目范围小,没必要写测试,但是随着项目越来越大,现在有必要了。

当我设置 rspec 和测试数据库时,我 运行 使用以下命令:

`rake db:create:all`

我收到了以下回复:

Database 'db/development.sqlite3' already exists
Database 'db/test.sqlite3' already exists
Created database 'db/production.sqlite3'`

问题: 鉴于我有一个已部署的应用程序(在 Heroku 上)和一个已经启动的生产数据库并且 运行,最后一行 ( Created database 'db/production.sqlite3) 一旦我合并我的更改并将我的代码推送到生产环境,是否会销毁任何数据?

此外,由于我已经在生产中使用了不同的数据库,我应该删除它吗?如果是,怎么做?

我很乐意添加任何其他人需要的详细信息,以便提供有用的回复!提前致谢

Heroku 使用的是 Postgres,而不是我上次检查时使用的 sqlite。

https://devcenter.heroku.com/articles/sqlite3

查看您的 gemfile 的 production 部分中的内容,它应该是 postgres。在 test/development 你可以使用 sqlite。

您使用 rake db:create 在计算机上所做的任何更改也应该是本地的。如果您确保正确配置 database.yml(也在上面的 link 中),您就不必担心弄乱 heroku 上的数据库。

如果可以的话,创建生产数据的备份也无妨。