Rails 2.x mit MS SQL Server 2005 verwenden

8

Hat jemand hier positive Erfahrung mit MS SQL Server 2005 von Rails 2.x zu arbeiten?

Unsere Entwickler verwenden Mac OS X und unsere Produktion läuft unter Linux. Aus alten Gründen sollten wir MS SQL Server 2005 verwenden.

Wir benutzen ruby-odbc und stoßen auf verschiedene Probleme, zu deprimierend, um sie hier aufzulisten. Ich habe den Eindruck, dass wir etwas falsch machen.

Ich spreche von der kompromisslosen Nutzung, also von Migrationen und allem.

Danke,

    
squadette 15.09.2008, 21:26
quelle

4 Antworten

8

Haben Sie darüber nachgedacht, JRuby zu verwenden? Microsoft hat einen JDBC-Treiber für SQL Server , der auf UNIX-Varianten ausgeführt werden kann (es ist reines Java AFAIK) ). Ich konnte heute die 2.0-Technologie-Vorschau mit JRuby und Rails 2.1 arbeiten. Ich habe noch keine Migrationen versucht, aber bisher scheint der Treiber recht gut zu funktionieren.

Hier ist eine grobe Skizze, wie es funktioniert:

  1. Stellen Sie sicher, dass Java 6 installiert ist
  2. Installieren Sie JRuby mithilfe der Anweisungen auf der JRuby-Website
  3. Installieren Sie Rails mit Gem ( jruby -S gem install rails )
  4. Laden Sie das UNIX-Paket von Microsoft SQL Server JDBC-Treiber (Version 2.0)
  5. Entpacke den Microsoft SQL Server Treiber
  6. Finde sqljdbc4.jar und kopiere es in JRubys lib-Verzeichnis
  7. jruby -S gem install activerecord-jdbcmssql-adapter
  8. Erstellen Sie ein Schienenprojekt ( jruby -S rails hello )
  9. Legen Sie die richtigen Einstellungen in "database.yml" (Beispiel unten)
  10. fest
  11. Du bist fertig! Versuchen Sie, jruby script/console auszuführen und ein Modell zu erstellen.
%Vor%

Hinweis: Ich bin mir nicht sicher, ob Sie die Windows-Authentifizierung mit dem JDBC-Treiber verwenden können. Möglicherweise müssen Sie SQL Server-Authentifizierung verwenden.

Viel Glück für Sie!

Ben

    
Benjamin Atkin 11.03.2016 23:39
quelle
3

Anstatt Ihren Produktionsserver unter Linux auszuführen, haben Sie in Erwägung gezogen, Rails unter Windows auszuführen? Ich entwickle gerade eine Anwendung, die SQL Server benutzt, und bis es weiß, scheint es gut zu laufen.

Dies sind die Schritte zum Zugreifen auf eine SQL Server-Datenbank aus einer Rails 2.0-Anwendung, die unter Windows ausgeführt wird.

Der SQL Server-Adapter ist in Rails 2 standardmäßig nicht enthalten. Es ist erforderlich, ihn mit dem folgenden Befehl herunterzuladen und zu installieren.

%Vor%

Laden Sie die neueste Version von ruby-dbi von

herunter

Ссылка

und extrahieren Sie die Datei dann aus ruby-dbi \ lib \ dbd \ ADO.rb

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

Warnung, der Ordner ADO existiert nicht, Sie müssen ihn also vorher erstellen.

Es ist nicht möglich, Rails für SQL Server mit der Option --database vorzukonfigurieren. Erstellen Sie Ihre Anwendung wie gewohnt und ändern Sie dann config \ database.yml in Ihrem Anwendungsordner wie folgt:

%Vor%

Run Rake db: migrieren, um Ihre Installation zu überprüfen. Wenn alles in Ordnung ist, sollten Sie keine Fehlermeldung erhalten.

    
hectorsq 19.09.2008 05:01
quelle
1

Ich würde Ihnen wärmstens empfehlen, die Migration aus der Legacy-Datenbank abzuwägen. Du wirst dich wahrscheinlich ziemlich schnell in einer Welt der Schmerzen wiederfinden. Aus der Erfahrung gehen auch Rails und Legacy-Schemata nicht zu gut zusammen.

Ich glaube nicht, dass es hier eine "nette Lösung" gibt, fürchte ich.

    
Aupajo 15.09.2008 23:36
quelle
1
  

Unsere Entwickler verwenden Mac OS X und unsere Produktion läuft unter Linux. Aus alten Gründen sollten wir MS SQL Server 2005 verwenden.

Wir entwickeln auf Ubuntu 8.04, aber auf unseren Produktionsservern läuft Linux (Centos) und wir verwenden auch SqlServer 2005.

Nach unseren Erfahrungen war das anfängliche Setup und die Konfiguration ziemlich schmerzhaft - es hat ein paar Wochen gedauert, bis alles gut zusammen gespielt wurde. Aber es ist jetzt alles nahtlos, und ich finde SqlServer funktioniert perfekt.

Wir verwenden die FreeTDS ODBC-Treiber, die einmal konfiguriert sind, sind in Ordnung.

Führen Sie keine Rails-Apps für Produktionen unter Windows aus - Sie bitten um Probleme. Es ist in Ordnung für die Entwicklung, aber nicht mehr. Rails skaliert auf Windows-Plattformen nicht gut.

Ich hoffe, das hilft.

    
EdJ 17.04.2009 08:44
quelle

Tags und Links