2016-11-15 37 views
0

我在C9上使用SQLite 3数据库创建了Rails项目。最近我想切换到PostgreSQL数据库,以便能够在Heroku上运行项目。所有来自SQLite 3数据库的记录都用Sequel gem复制到PostgreSQL数据库中,没有任何问题。所有的记录都被传递到了新的数据库中,但是我能够看到它,但是,在重新启动我的C9项目并启动PostgreSQL服务并将其连接到我的数据库后,我发现数据库中没有任何记录。或者,它尚未连接。我不明白。在C9上重新启动服务器后,我的PostgreSQL数据库为空

每次我重新启动项目时,PostgreSQL数据库中的记录都消失了,我必须创建一个新的数据库并再次迁移它以查看我的记录。我究竟做错了什么?

这是我行动的名单:

sudo service postgresql start 
psql -c "create database myapp_development owner=ubuntu" 
sequel -C sqlite://db/development.sqlite3 postgres://[email protected]""/myapp_development 

然后更新database.yml文件记录:

Development: 
    - adapter: postgresql 
    - encoding: SQL_ASCII 
    - database: myapp_development 
    - pool: 5 
    - username: ubuntu 
    - password: password 

然后运行:

rake db:migrate 

这些动作,我可以运行后该项目并查看我的记录。

重新启动项目后,我试着运行以下命令:

sudo service postgresql start 
psql myapp_development ubuntu 
\c 

,但它并不能帮助我看到任何记录。

请告诉我,如果我错过了任何命令。

+0

通过“重新启动”你的意思只是重新启动一切,或者它重新创建VM和设置您的代码文件再次? (在这种情况下,数据库当然不见了) –

+0

理查德,通过重新启动我的意思是重新启动浏览器,并打开新的C9会议与同一工作区 – Nikita

回答

0

postgres用户运行psql

sudo sudo -u postgres psql -d myapp_development -U ubuntu -W 
+0

米哈伊尔,我试了。收到以下消息:FATAL:用户“ubuntu”的对等身份验证失败 保存上一个连接 – Nikita

+0

尝试使用-W'sudo sudo -u postgres psql -d myapp_development -U ubuntu -W' –

+0

Mikhail,我试过了 - 询问密码后对于用户ubuntu的结果是一样的:psql:FATAL:对于用户“ubuntu”的对等认证失败 – Nikita

相关问题