将Rails 2.x与MS SQL Server 2005一起使用

这里有人有从Rails 2.x使用MS SQL Server 2005的积极经验吗?

我们的开发人员使用Mac OS X,我们的生产在Linux上运行。 出于遗留原因,我们应该使用MS SQL Server 2005。

我们正在使用ruby-odbc并遇到各种各样的问题,在这里列出太令人沮丧了。 我得到的印象是我们做错了什么。

我说的是不妥协的用法,即迁移和所有。

谢谢,

你考虑过使用JRuby吗? Microsoft有一个用于SQL Server的JDBC驱动程序 ,可以在UNIX变种上运行(它是纯Java AFAIK)。 我今天能够使用JRuby和Rails 2.1进行2.0技术预览。 我还没有尝试迁移,但到目前为止,驱动程序似乎运行良好。

这是如何使其工作的草图:

  1. 确保已安装Java 6
  2. 使用JRuby网站上的说明安装JRuby
  3. 使用gem安装Rails( jruby -S gem install rails
  4. 下载Microsoft的SQL Server JDBC驱动程序的UNIX包(版本2.0)
  5. 解压缩Microsoft的SQL Server驱动程序
  6. 找到sqljdbc4.jar并将其复制到JRuby的lib目录
  7. jruby -S gem install activerecord-jdbcmssql-adapter
  8. 创建一个rails项目( jruby -S rails hello
  9. 将正确的设置放在database.yml中(以下示例)
  10. 你们都准备好了! 尝试运行jruby script/console并创建模型。
    发展:
       host:localhost
      适配器:jdbc
      用户名:sa
      密码:kitteh
       driver:com.microsoft.sqlserver.jdbc.SQLServerDriver
       url:jdbc:sqlserver:// localhost; databaseName = mydb
      超时:5000

注意:我不确定您是否可以将Windows身份validation与JDBC驱动程序一起使用。 您可能需要使用SQL Server身份validation。

祝你好运!

您是否考虑过在Windows上运行rails而不是在Linux上运行生产服务器? 我目前正在使用SQL Server开发一个应用程序,直到知道它似乎运行正常。

这些是从Windows上运行的Rails 2.0应用程序访问SQL Server数据库的步骤。

Rails 2中默认不包含SQL Server适配器。必须使用以下命令下载并安装它。

 gem install activerecord-sqlserver-adapter --source=http://gems.rubyonrails.org 

从中下载最新版本的ruby-dbi

http://rubyforge.org/projects/ruby-dbi/

然后从ruby-dbi \ lib \ dbd \ ADO.rb中提取文件

到C:\ ruby​​ \ lib \ ruby​​ \ site_ruby \ 1.8 \ DBD \ ADO \ ADO.rb。

警告,文件夹ADO不存在,因此您必须提前创建它。

无法使用–database选项为SQL Server预配置rails,只需像往常一样创建应用程序,然后在应用程序文件夹中修改config \ database.yml,如下所示:

 development: adapter: sqlserver database: your_database_name host: your_sqlserver_host username: your_sqlserver_user password: your_sqlserver_password 

运行rake db:migrate以检查安装。 如果一切正常,您不应收到任何错误消息。

我强烈建议你权衡从旧数据库迁移。 你可能会很快发现自己陷入痛苦的世界。 根据经验,Rails和遗留模式也不能很好地结合在一起。

我不认为这个问题有一个“好的解决方案”,我担心。

我们的开发人员使用Mac OS X,我们的生产在Linux上运行。 出于遗留原因,我们应该使用MS SQL Server 2005。

我们正在开发Ubuntu 8.04,但我们的生产服务器运行Linux(Centos),我们也使用SqlServer 2005。

从我们的经验来看,最初的设置和配置非常痛苦 – 花了几个星期的时间才能让所有东西都很好地融合在一起。 但是,它现在都是无用的,我发现SqlServer运行得非常好。

我们使用曾经配置好的FreeTDS ODBC驱动程序。

不要在Windows上运行产品Rails应用程序 – 你要求麻烦。 这对开发很好,但仅此而已。 Rails在Windows平台上无法很好地扩展。

希望有所帮助。