# Use "establish\_connection"

**URL:** <https://www.ruby-forum.com/t/use-establish-connection/182687>\
**Category:** Rails\
**Created:** [February 1, 2010, 2:36pm UTC](https://www.ruby-forum.com/t/use-establish-connection/182687 "2010-02-01T14:36:58Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![gandhi-tush](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/5daacb/32.png) [@gandhi-tush](https://www.ruby-forum.com/u/gandhi-tush)\
**Post date:** [February 1, 2010, 2:36pm UTC](https://www.ruby-forum.com/t/use-establish-connection/182687/1 "2010-02-01T14:36:58Z")

</div>

Hi,  
I have 2 database for my application “development1” and “development2”.  
My default database is “development1”. But I have to update the  
“contacts” table which is in “davelopment2”. So I know that I have to  
use the “establish\_connection” to establish a connection with the  
“development2”.

I am doing like this  
"  
ActiveRecord::Base.establish\_connection(  
:adapter =\> “mysql” ,  
:host =\> “localhost” ,  
:database =\> “railsdatabase” ,  
:username =\> “railsusername” ,  
:password =\> “railspassword”  
)"  
contact=Contact.find(2)  
contact.name=“Tushar G.”  
contact.save"  
Whether it will point to the “contacts” table of “development2”  
database.  
Whether this will work? beacuse I haven’t made any connection reference  
for “contacts” code.  
Can anyone please help me out for this.  
Thanks,  
Tushar

---

<div class="post-metadata">

**Author:** ![gandhi-tush](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/5daacb/32.png) [@gandhi-tush](https://www.ruby-forum.com/u/gandhi-tush)\
**Post date:** [February 1, 2010, 2:48pm UTC](https://www.ruby-forum.com/t/use-establish-connection/182687/2 "2010-02-01T14:48:15Z")

</div>

If you are always going to CRUD contacts in development2, then you can  
set the connection on the model:

in contact.rb  
class Contact \< ActiveRecord::Base  
establish\_connection(:development2)  
end

in database.yml:

development2:  
adapter: mysql  
host: localhost  
database: railsdatabase  
username: railsusername  
password: railspassword

---

<div class="post-metadata">

**Author:** ![gandhi-tush](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/5daacb/32.png) [@gandhi-tush](https://www.ruby-forum.com/u/gandhi-tush)\
**Post date:** [February 2, 2010, 5:35am UTC](https://www.ruby-forum.com/t/use-establish-connection/182687/3 "2010-02-02T05:35:13Z")

</div>

Thanks Sharagoz.  
Yes it makes sense, to add the configuraion on model level.  
Sharagoz – wrote:

> If you are always going to CRUD contacts in development2, then you can  
> set the connection on the model:
> 
> in contact.rb  
> class Contact \< ActiveRecord::Base  
> establish\_connection(:development2)  
> end
> 
> in database.yml:

---

<div class="post-metadata">

**Author:** ![gandhi-tush](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/5daacb/32.png) [@gandhi-tush](https://www.ruby-forum.com/u/gandhi-tush)\
**Post date:** [March 3, 2010, 9:49pm UTC](https://www.ruby-forum.com/t/use-establish-connection/182687/4 "2010-03-03T21:49:19Z")

</div>

How do we open a read-only connection to the second database  
development2 ?
