2014-08-30 38 views
0

我使用rails对一个应用程序进行了编程,我可以将其部署到一台机器上。它使用在本地机器中创建的sqlite3数据库。在rails上配置一个远程sqlite3数据库

现在我需要把这个数据库放在另一台机器上,但我不知道如何。我在另一台机器和sqlite3上安装了rails环境。我这样配置database.yml文件:

development: 
    adapter: sqlite3 
    database: db/development.sqlite3 
    host: 172.**.**.** 
    pool: 5 
    timeout: 10000 
    username: username 
    password: password 

但是没有任何反应。我需要在另一台机器上配置什么吗?我错过了什么吗?对不起,如果我看起来无知,是我第一次做这样的事情。

+0

你可以SSH的数据库机器? – pangpang 2014-08-30 02:39:04

+0

是的,我可以没有问题。 – 2014-08-30 02:43:49

+2

Sqlite是一个基于文件的DBMS,没有网络服务。但你可以从这个问题中学习:http://stackoverflow.com/questions/21571277/how-to-connect-a-sqlite-database-in-remote-host – 2014-08-30 02:46:04

回答

2

开箱即用,不,你不能和它不鼓励在SQLite own manual

如果你要通过 网络访问一个公共数据库许多客户端程序,你应该考虑使用一个客户端/服务器数据库引擎 而不是SQLite。

你可以看看围绕SQLite构建的各种解决方案来解决这个问题here

但是,更好的解决方案是切换到另一个RDBMS,如MySQL或Postgresql。它不应该影响你的应用程序(因为ActiveRecord在隔离你的数据库特定指令方面做得很好)。