Accessing a non standard database in rails

Normally in rails you would configure a production, test and development database in the database.yml file. If some of your rails data comes from a different database you can configure it in database.yml as well. For example I wanted two rails applications to synchronize their databases occassionally. To do this I created a remote db in one of the rails application that looks like this in database.yml:

remotedb: adapter: mysql database: remote_rails username: remote_user password: remote_pwd host: remote server

Inside the script that is executed by script/runner I did the following to access the new db.

admin_cfg=Rails::Configuration.new.database_configuration["remotedb"] if remote_cfg.nil? raise "admindb is not configured. Cannot pull data from admin db." end dbh = Mysql.real_connect(remote_cfg["host"], remote_cfg["username"], remote_cfg["password"], remote_cfg["database"]) Now use ruby's mysql library to work with dbh

August 15, 2009| Tags : Ruby Mysql
X

Comments Section

Feel free to comment on the post but keep it clean and on topic.

comments powered by Disqus

About Me

Tommie Jones Software Development for Linux/Unix since 1995. I've done everything from Perl,C/C++,Java,Flash,php, ruby and currently node.js. Always interested in pushing technology one step further than expected.

atlantageek.github.com