If you have such complex JDBC URL then you can specify it as url:
parameter in database.yml :
development:
adapter: oracle_enhanced
url: jdbc:oracle:thin:@(description=(address_list=(address=
(host=somehostname1)(protocol=tcp)(port=1521))(address=
(host=somehostname2)(protocol=tcp)(port=1521))(load_balance=yes)
(failover=yes))(connect_data=(service_name=someservicename)))
username: user
password: pass
Other option is that you can define this connection in tnsnames.ora
file (that OCI client uses), defne TNS_ADMIN environment variable to
point to directory where tnsnames.ora is located and then you can
define your database.yml as following:
development:
adapter: oracle_enhanced
database: someservicename
username: user
password: pass
where someservicename is TNS names alias that you used in tnsnames.ora
file.
Raimonds