介绍
Ruby on Rails使用sqlite3作为其默认数据库,它在许多情况下运行良好,但可能不足以满足您的应用程序。 如果应用程序需要的可扩展性,集中化,并且由客户机/服务器SQL数据库,如提供的控制(或任何其它功能) 的PostgreSQL或MySQL ,则需要进行一些额外的步骤让它运行起来。
本教程将向您展示如何设置开发Ruby on Rails环境,使您的应用程序在Ubuntu 14.04服务器上使用PostgreSQL数据库。 首先,我们将介绍如何安装和配置PostgreSQL。 然后,我们将向您展示如何创建一个使用PostgreSQL作为其数据库服务器的rails应用程序。
先决条件
本教程要求有一个工作的Ruby on Rails开发环境。 如果你还没有,你可以按照这个链接教程: 如何在Ubuntu 14.04与rbenv安装Ruby on Rails的 。
您还需要有机会获得超级用户或sudo
,账户,这样你就可以安装PostgreSQL数据库软件。
一旦你准备好了,让我们安装PostgreSQL。
安装PostgreSQL
如果你还没有安装PostgreSQL,我们现在就做。
首先,更新apt-get:
sudo apt-get update
然后安装PostgreSQL及其开发库:
sudo apt-get install postgresql postgresql-contrib libpq-dev
PostgreSQL现在已经安装,但你应该创建一个新的数据库用户,你的Rails应用程序将使用。
创建数据库用户
使用此命令创建一个PostgreSQL超级用户用户(用您自己的用户名替换高亮显示的单词):
sudo -u postgres createuser -s pguser
如果要为数据库用户设置密码,请使用以下命令输入PostgreSQL控制台:
sudo -u postgres psql
PostgreSQL的控制台被显示postgres=#
提示符。 在PostgreSQL提示符处,输入此命令以设置您创建的数据库用户的密码:
\password pguser
在提示符处输入所需的密码,然后进行确认。
现在您可以通过输入以下命令退出PostgreSQL控制台:
\q
让我们现在创建一个Rails应用程序。
创建新的Rails应用程序
在主目录中创建一个新的Rails应用程序。 使用-d postgresql
选项来设置的PostgreSQL作为数据库,并确保您的应用程序名称来代替突出显示的单词:
cd ~
rails new appname -d postgresql
然后进入应用程序的目录:
cd appname
下一步是配置应用程序的数据库连接。
配置数据库连接
您创建的PostgreSQL用户将用于创建应用程序的测试和开发数据库。 我们需要为应用程序配置适当的数据库设置。
在您喜欢的文本编辑器中打开应用程序的数据库配置文件。 我们将使用vi:
vi config/database.yml
根据default
部分中,找到写着“池:5”的路线,并在其添加以下行。 它应该看起来像这样(用PostgreSQL用户和密码替换突出显示的部分):
host: localhost
username: pguser
password: pguser_password
保存并退出。
创建应用程序数据库
创建应用程序的development
和test
使用该rake命令数据库:
rake db:create
这将在您的PostgreSQL服务器中创建两个数据库。 例如,如果应用程序的名称是“appname”,它将创建名为“appname_development”和“appname_test”的数据库。
如果你在这一点上得到一个错误,重温以前的第(配置数据库连接),以确保该host
, username
和password
在database.yml
是正确的。 在确保数据库信息正确后,请尝试重新创建应用程序数据库。
测试配置
测试应用程序是否能够使用PostgreSQL数据库的最简单方法是尝试运行它。
例如,要运行开发环境(默认),请使用以下命令:
rails server
这将启动您的本地主机上的Rails应用程序在端口3000。
如果您的Rails应用程序在远程服务器上,并且您想通过Web浏览器访问它,一个简单的方法是将其绑定到您的服务器的公共IP地址。 首先,看看您的服务器的公网IP地址,然后用使用rails server
像这样(用它替换高亮的部分)的命令:
rails server --binding=server_public_IP
现在您应该能够通过服务器在端口3000上的公共IP地址在Web浏览器中访问您的Rails应用程序:
http://server_public_IP:3000
如果您看到“欢迎加载”Ruby on Rails页面,您的应用程序已正确配置,并连接到PostgreSQL数据库。
结论
现在您已准备好在Ruby on Rails应用程序上开始开发,在PostgreSQL作为数据库,在Ubuntu 14.04!
祝你好运!