[Catalyst] Newbie Question about Database

John Goulah jgoulah at gmail.com
Mon Jan 19 22:43:05 GMT 2009


On Mon, Jan 19, 2009 at 3:10 PM, Giancarlo Corcuera
<giancarlo at capybara-software.com> wrote:
> Hi:
>
> I'm building an App but I want to have my database in another IP. Is there a
> way to enter the parameters to do this instead of the normal connection that
> appears in the manual?
>
> This is my model (a very standar one):
>
> package App::Model::ModelDB;
>
> use strict;
> use base 'Catalyst::Model::DBIC::Schema';
>
> __PACKAGE__->config(
>   schema_class => 'App::Schema::ModelDB',
>   connect_info => [
>       'dbi:mysql:model',
>       'model',
>       'model',
>       {
>           mysql_enable_utf8   => 0,
>           on_connect_do       => [
>               "SET NAMES 'utf8'",
>               "SET CHARACTER SET 'utf8'",
>           ],
>       }
>   ],
> );
>
> How can I change it to connect to a DB in another IP?
>


You probably want to do this in the config, something like this:

If the config is yaml

Model::ModelDB:
     connect_info:
          - 'dbi:mysql:dbname=my_db_name;host=my_host_or_ip'
          - 'my_dbuser'
          - 'my_dbpass'
          - AutoCommit: 1
            mysql_auto_reconnect: 0


Or if the config is conf

<Model::ModelDB>
    connect_info   dbi:mysql:dbname=my_db_name;host=my_host_or_ip
    connect_info   my_dbuser
    connect_info   my_dbpass
    <connect_info>
        AutoCommit   1
        mysql_auto_reconnect   0
    </connect_info>
</Model::ModelDB>



Thanks,
John



More information about the Catalyst mailing list