Forum: Ruby on Rails Oracle and MySql simultaneously from rails app

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
Da P. (Guest)
on 2006-05-16 05:19
I searched this site on Oracle && MySql, nothing came up, so perhaps
this is a new topic for this forum.

I'd like to access two databases from the same application
simultaneously (well, more precisely, in rapid succession, calling one
first and then the other, as any "joins" will be done in the application

One database is in MySql, the other is Oracle.

Possible?  Howto?  THANKS
Chang Sau S. (Guest)
on 2006-05-16 06:12
(Received via mailing list)


1. Install the Rails-Oracle connection library(download from and install)
2. Add in this into database.yml (or something like it):

  adapter: oci
  username: ruby
  password: ruby
  host: RAILS

3. Create a model:

class MyOracleModel < ActiveRecord::Base
  set_table_name "my_oracle_table_name"
  establish_connection "my_oracle_connection"

4. Use the model as any other ActiveRecord model

5. Mix and match with your MySQL models, only be careful with the

da plutes wrote:
> Possible?  Howto?  THANKS

Sau S.
Da P. (Guest)
on 2006-05-16 21:21
Thank you Sau S..
Da P. (Guest)
on 2006-05-17 08:17
I installed the Rails-Oracle connection library.  Walking before I run
-- first I am trying to get Oracle up on Rails before I do both MySql &
Oracle. So, this is in database.yml:

  adapter: oci
  database: dbname
  username: user
  password: passwd
  host: hostname

I am able to connect to the Oracle database using SqlPlus and run
queries -- for instance this succeeds:

sqlplus user/passwd@dbname

But Rails seems to not see Oracle. When I try to generate a scaffold for
a controller that depends on a table in this database, I get:

ORA-12154: TNS:could not resolve service name

..and the controller and views are not created.

The service name for the database seems to be listed properly in my
tnsnames.ora file, which I expect given that I am able to connect via

Any ideas?
Da P. (Guest)
on 2006-05-17 10:00
...never mind w.r.t. previous -- I put the tnsnames.ora defined name
(which happens to be the same as the database name) in the host
parameter and it works.

This topic is locked and can not be replied to.