Min fråga besvarades på den här tråden på Codeigniter-forum .
Nyckeln är att inte autoinitiera databasen:
$db['xxx']['autoinit'] = FALSE;
För att undertrycka fel kan du ställa in detta
$db['xxx']['db_debug'] = FALSE;
Sedan i din kod som kontrollerar db-tillståndet, kontrollera TRUE/FALSE för initialize()-funktionen:
$db_obj = $this->database->load('xxx',TRUE);
$connected = $db_obj->initialize();
if (!$connected) {
$db_obj = $this->database->load('yyy',TRUE);
}
Här är hela min konfigurationsfil för framtida referens:https://gist.github.com/3749863 .