Ruby on rails 在windows上安装Postgres以便与Ruby on Rails一起使用
目前我得到以下错误: PGError(致命:用户“postgres”的密码身份验证失败): 当我的应用程序尝试访问数据库时 我想针对postgres测试我的SQL调用,因为我的应用程序在Heroku上线时经常中断,因为postgres对sqlite 3的要求更严格(我认为这可能是一件健康的事情)。因此,我有一个类似的请求,要求提供一个不过时的教程,用于在windows(7)上安装与ruby on rails一起使用的postgres。我原以为下载和安装只需20分钟,但2个多小时后,我想我还不太接近。到目前为止,我已经: 下载并安装Postgres版本8.4.8-1 设置我的环境变量,使路径(用户)为:Ruby on rails 在windows上安装Postgres以便与Ruby on Rails一起使用,ruby-on-rails,windows,ruby-on-rails-3,postgresql,installation,Ruby On Rails,Windows,Ruby On Rails 3,Postgresql,Installation,目前我得到以下错误: PGError(致命:用户“postgres”的密码身份验证失败): 当我的应用程序尝试访问数据库时 我想针对postgres测试我的SQL调用,因为我的应用程序在Heroku上线时经常中断,因为postgres对sqlite 3的要求更严格(我认为这可能是一件健康的事情)。因此,我有一个类似的请求,要求提供一个不过时的教程,用于在windows(7)上安装与ruby on rails一起使用的postgres。我原以为下载和安装只需20分钟,但2个多小时后,我想我还不太接
C:\Ruby192\bin;C:\ProgramFiles(x86)\PostgreSQL\8.4\bin
档案:
为我的rails应用程序运行了捆绑安装
,看起来很成功,但还没有找到验证安装的简单方法
将database.yml设置为:
我知道我需要,并输入我的本地IP地址,我将连接到它,然后编辑“C:\Program files(x86)\PostgreSQL\8.4\data”等中的另一个.conf文件
我认为Rails让我变得软弱了,我是不是想得太多了,还是设置起来真的相当棘手,我应该回到Sqlite3,它还有非常有用的SQLite管理器Firefox插件
我还在寻找一本安装和使用Postgres for rails的初学者指南,但到目前为止,我只是被我看到/尝试过的大多数东西弄糊涂了,比如,,(对于雪豹),(linux)
任何指点都将不胜感激。谢谢
James您的链接中没有一个是(可以说)最有用的文档—postgresql文档。最近,我结合使用这些文档和配置了一个带有postgresql和django的Linux Mint box,尽管后者是特定于Linux的 我更关心的是验证postgresql方面的内容,而不是rails。也就是说,您的问题应该是“如何在Windows7机器上设置和测试postgresql服务器”,而不是您需要知道如何将其锁定到rails中 编辑: 也许对你也有用——官方的postgresql wiki提供了详细的安装指南
祝你好运 在windows 7上安装Postgres以用作rails 3(3.0.7)项目的PostgreSQL数据库的方法
序言(您可以跳过此位) 所以首先要指出的是,Postgres不仅仅是与.sqlite3不同的文件扩展名,它是一种管理数据库的完整机制。因此,它有一个客户机/服务器模型,您需要对其进行设置,以使用Postgres作为rails应用程序的数据库 经历Postgres设置与几乎毫不费力的sqlite设置的巨大痛苦的动机:如果您要部署到Heroku,他们目前正在使用Postgres,因此您在sqlite3上的一些SQL调用在与Postgres一起使用时会中断。在本地调试postgres要比在Heroku的服务器上调试容易得多 所以我做了以下几件事: (免责声明:我可能忘了包括我做过的一些事情……我花了48个多小时的断断续续的痛苦才让它开始工作……如果以下建议对你不起作用,那么它就太大了(2300页!!)但是应该会有帮助。如果你真的想使用Postgres,我建议你下载这篇文章,因为它有很多我刚刚开始理解的内容。) (第二个免责声明:我几乎肯定违反了20条合理的Postgres指南,并在这样做的同时暴露了Postgres数据库中的安全漏洞。如果有任何明显的事情一位经验丰富的Postgres用户不同意,请编辑我的帖子。)
。步骤1。从下载并安装PostgreSQL v9.0.4-1,因为windows 7上只支持9.0.x。我保留了所有默认选项,只是在Postgres安装程序提示下使用了“secret”作为密码(我也不完全确定在互联网上共享这些信息的后果是什么……我肯定很快就会发现)。在步骤3中,您将需要此密码 .Step 2.更改环境变量,使路径((我不确定这是否重要))为:
C:\Program Files\PostgreSQL\9.0\bin
(注意,我在64位windows上,因此未在“C:\Program Files(x86)\PostgreS…”中安装32位的windows) 不要忘记更改对文件夹PostgreSQL\9.0的访问权限,并删除该文件夹或内容的任何默认只读权限。 (您可能还需要重新启动计算机才能使其生效-谢谢@Gavin-尽管不太可能) 。步骤3。通过尝试创建新数据库来测试Postgres的安装: 从命令行:
createdb-U postgres mydb\U as\U postgres
。
现在应该提示您输入密码,如果您没有,可能需要先启动服务器(我不记得是否需要这样做)。最简单的方法是通过pgAdmin III,它应该是位于C:\Program Files\PostgreSQL\9.0\bin
等文件夹中的“pgAdmin3.exe”。启动pgAdmin III后,左边应该有一个名为“对象浏览器”的面板。在这种情况下,应该有一棵树:
服务器组>服务器>PostgreSQL 9.0(本地主机:5432)
右键单击“PostgreSQL 9.0(本地主机:5432)”并选择“连接”
createdb-U postgres mydb_as_postgres
命令应该创建一个名为“mydb_as_postgres”的新数据库,您可以通过启动pgAdmin III并双击“PostgreSQL 9.0(localhost:5432)”来检查该数据库。根据这一点,应当:
数据库(2)
其中应列出两个名为my的数据库
gem 'pg', '0.11.0' # instead of gem 'sqlite3', '1.3.3'
development:
adapter: postgresql
database: db/development
username: postgres
password: secret
host: localhost
encoding: UTF8
pool: 5
timeout: 5000
C:>psql mydb_as_user
Password:
psql (9.0.4)
WARNING: Console code page (850) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.
Type "help" for help.
mydb5=#
CREATE TABLE
mydb5=#
ERROR: syntax error at or near "PRAGMA"
LINE 1: PRAGMA foreign_keys=OFF;
^
BEGIN
COMMIT
development:
adapter: postgresql
database: db/development
username: AJames # replace this with your own user name
password: secret # replace this with your own password
host: localhost
encoding: UTF8
pool: 5
timeout: 5000
database: db/development
database: development
rake db:create
rake db:migrate