[support] Dynamic remote database access
Michael Prasuhn
mike at mikeyp.net
Mon Jul 11 19:28:47 UTC 2011
1) I don't see a reply to Mr. Metzler.
2) What we've said to you is 100% accurate. Unless you try to query the
site (which you're already said you only do on cron), Drupal will ignore
the extra db connection string, and your site will be fine. $db_url is
just a global variable that holds configuration.
3) If it's really such a big deal then do something like this:
<?php
// Oh I need to connect to another DB
global $db_url;
$cur_db = $db_url;
$db_url = array('default' => $cur_db, 'another_db' =>
'mysqli://user:pass@host/dbname');
db_set_active('another_db');
$result = db_query('SELECT * FROM table');
db_set_active();
//....process $result
-Mike
Ms. Nancy Wichmann wrote:
> Not true -- see my reply to Mr. Metzler.
> /*Nancy*/
> Injustice anywhere is a threat to justice everywhere. -- Dr. Martin L.
> King, Jr.
>
> *From:* Michael Prasuhn <mike at mikeyp.net>
> *To:* support at drupal.org; Ms. Nancy Wichmann <nan_wich at bellsouth.net>
> *Sent:* Monday, July 11, 2011 3:02 PM
> *Subject:* Re: [support] Dynamic remote database access
>
> Drupal 6 is pretty much going to ignore any additional (non-default)
> connections specified, if $db_url is an array(), unless you try to
> connect. No problem putting the connection string there and using
> only when you need it. This is even true for DBTNG backport module,
> although it has other ways of setting up connections after Drupal
> has boostrapped.
>
> -Mike
>
>
> Ms. Nancy Wichmann wrote:
> > No, the $db_url method simply will not work because we cannot
> guarantee
> > that the remote will always be accessible. If it's not, there is no
> > reason why our site should not be. Once in a while (cron), we
> need to go
> > get some data from that database; if it's not available at that
> time, we
> > will merely log the error and try later.
> > /*Nancy*/
> > Injustice anywhere is a threat to justice everywhere. -- Dr.
> Martin L.
> > King, Jr.
> >
> > *From:* Fred Jones
> >
> > Not clear what the question is. does this help:
> > http://drupal.org/node/18429
> >
> > On Mon, Jul 11, 2011 at 9:35 PM, Ms. Nancy Wichmann wrote:
> > > I know that the "standard" way to access another database is to
> > include it
> > > in $db_url in the settigs.php file. This has the undesireable
> > effect that
> > > the remote database must be available all the time. In my case,
> > we only need
> > > to access the remote DB a few times a week via a cron job, where
> > much better
> > > error handling is available. I haven't yet found a way (I'm still
> > searching
> > > DO) to do this. Does anyone have any good ideas? This is Drupal 6
> > - don't
> > > bother suggesting an upgrade. Replication is probably not an
> > option because
> > > we shouldn't have access to, nor need, everything in the remote DB.
> >
>
> -- __________________
> Michael Prasuhn
> 503.512.0822 office
> mike at mikeyp.net <mailto:mike at mikeyp.net>
> http://mikeyp.net
>
>
--
__________________
Michael Prasuhn
503.512.0822 office
mike at mikeyp.net
http://mikeyp.net
More information about the support
mailing list