Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie konfiguriere ich Ruby on Rails mit Oracle?

Baue Rubine, Edelsteine ​​und Schienen

gemäß http://rubyonrails.org/download:

build ruby
build gem
use gem to install rails

Holen Sie sich Oracle Instantclient

Download von https://www.oracle.com/technetwork/database/database-technologies/instant-client/downloads/index.html

Sie benötigen diese beiden Pakete für Ihre Architektur.

instantclient-basic
instantclient-sdk

Entpacken Sie diese Dateien und erstellen Sie diesen Link

cd instantclient_10_2
# .dylib for mac, .so for linux
ln -s libclntsh.dylib.10.1 libclntsh.dylib

Baue ruby-oci8

Beachten Sie, dass JRuby-Benutzer ruby-oci8 nicht benötigen, aber das Oracle JDBC-JAR, entweder ojdbc6.jar oder ojdbc5.jar, je nachdem, ob Sie Java 6 oder Java 5 haben.

Laden Sie es von http://ruby-oci8.rubyforge.org/en/index.html herunter und führen Sie es aus

# DYLD for mac
export DYLD_LIBRARY_PATH=/path/to/instantclient_10_2
# LD for linux
export LD_LIBRARY_PATH=/path/to/instantclient_10_2
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install

Testen Sie mit dieser Zeile und Ihrer Datenbank-Verbindungszeichenfolge.

ruby -r oci8 -e "OCI8.new('scott/[email protected]').exec('select * from user_tables') do |r| puts r.join(','); end"

Installieren Sie activerecord-oracle_enhanced-adapter

Achtung, nicht activrecord-oracle-adapter wie viele ältere Seiten erwähnen.

gem install activerecord-oracle_enhanced-adapter

Machen Sie dieses süße Rails-Ding

rails railstest
cd railstest
# edit config/database.yml as below
ruby script/generate scaffold comic title:string issue:integer publisher:string
rake db:migrate
ruby script/server

Im Browser testen

<http://localhost:3000/comics>

config/database.yml

Verwenden Sie Datenbank wenn Sie einen TNS-Eintrag haben, verwenden Sie andernfalls host . Beachten Sie, dass Sie drei Einträge (Entwicklung, Test, Produktion) zum Aktualisieren haben.

development:
    adapter: oracle_enhanced
    database: orcl           # format is tns-name entry
    host:  myorclhost/orcl   # format is hostname/instance-name
    username: scott
    password: tiger

Referenzen

  • http://emphaticsolutions.com/2008/05/22/connecting-to-oracle-from-ruby-on-rails.html
  • http://www.oracle.com/technology/pub/articles/saternos-ror-faq.html
  • http://drawohara.com/post/37166893/rails-unsucking-oci-oracle-on-rails-2-1
  • http://www.oracle.com/technology/pub/articles/haefel-oracle-ruby.html