Postgres 8.3安装在Windows 2008服务器上。 Ruby 1.8-6已安装。 gem install ruby-postgres。
尝试简单连接时,我得到了
与postgres 8.3一起发布的ssleay32与红宝石1.8-6之间似乎存在一些冲突
我知道我可以使用gem postgres-pr但是我会优先使用ruby-postgres,因为这是我在所有其他设置上使用的,即使它们大多数是在linux而不是windows下运行。
所以问题是,有没有人解决这个问题以及如何解决这个问题?
答案 0 :(得分:5)
对于使用最新的OpenSSL二进制文件,任何更好的解决方案是在ruby \ bin文件夹和posgresql \ lib文件夹中重命名libeay32.dll和ssleay32.dll,并安装最新的OpenSSL http://www.slproweb.com/products/Win32OpenSSL.html,在撰写本文时,它是“Win32 OpenSSL v0.9.8j Light”将dir放在路径上然后离开你,它对我有用!您会感受到使用最新和最安全的OpenSSL库的热情。
答案 1 :(得分:1)
Miles Georgi
这可能是最好的方法 开始,但最终你会想要 改为使用ruby-postgres。该 让这个驱动程序工作的技巧 是将2个dll文件复制到您的 来自你的c:\ ruby \ bin文件夹 C:\ program files \ posgresql \ lib文件夹。 我认为这两个文件是libeay32.dll 和ssleay32.dll
我认为另一个approch是使用trust而不是localhost中的md5。因为我认为这种ssleay的需要应该是认证的一部分。
答案 2 :(得分:0)
在Windows下不做太多事情的情况下获得最小的东西。
使用:gem install ruby-postgres
然后安装Windows版本的pgadmin并使用所有需要的文件 (从pgadmin \ bin到ruby \ bin或通过将PATH设置为pgadmin \ bin)
答案 3 :(得分:0)
我从未接触过ruby或postgres,但你使用的是旧版本的openssl而不是它编译的版本。最新版本是openssl-0.9.8j,以便构建:
使用visual c ++ 2008 express + active perl下载并解压缩:
C:\ openssl-0.9.8j> perl配置VC-WIN32
C:\ OpenSSL的-0.9.8j> MS \ do_masm
C:\ openssl-0.9.8j> nmake -f ms \ ntdll.mak
答案 4 :(得分:0)
只需复制OpenSSL
的最新二进制文件即可