На въпроса ми беше отговорено в тази тема във форумите на Codeigniter .
Ключът е да не автоматично инициализирайте базата данни:
$db['xxx']['autoinit'] = FALSE;
За да потискате грешките, можете да зададете това
$db['xxx']['db_debug'] = FALSE;
След това във вашия код, който проверява състоянието на db, проверете TRUE/FALSE на функцията initialize():
$db_obj = $this->database->load('xxx',TRUE);
$connected = $db_obj->initialize();
if (!$connected) {
$db_obj = $this->database->load('yyy',TRUE);
}
Ето целия ми конфигурационен файл за бъдещи справки:https://gist.github.com/3749863 .