на CakePHP: Как использовать и подключить альтернативную конфигурацию базы данных, если не удалось подключиться к БД с первой попытки - PullRequest
1 голос
/ 29 октября 2011

Мой вопрос: на CakePHP: Как использовать и подключить альтернативную конфигурацию базы данных, если не удалось подключиться к БД?

Исходя из моего вопроса выше, просто дайте вам понять, что на традиционном программировании PHP мы можем сделать так:

$db_configs=array(
    0=>array('host'=>'localhost1','user'=>'root1','password'=>'password1'),
    1=>array('host'=>'localhost2','user'=>'root2','password2'=>'password2')
);

foreach($db_configs as $db_config)
{
   if(!mysql_connect($db_config['host'],$db_config['user'],$db_config['password'])
   {
      // DB Connection Failed, do nothing and try next db config...
   }
   else
   {
     echo 'DB Connection Success, Break';
     break;
   }
}

Таким образом, идея заключается в том, чтобы скрипт попытался повторно подключиться к базе данных, когда она не удалась, и использовал альтернативную переменную конфигурации.

Как мы можем сделать это на CakePHP?

Спасибо.

1 Ответ

1 голос
/ 31 октября 2011

Определите две или более конфигурации в APP / config / database.php.Затем выполните проверку в файле bootstrap.php

            $Database = ConnectionManager::getInstance();
            $Database->config = new DATABASE_CONFIG();

            $dataSource = $Database->getDataSource('default');
            if (!$dataSource->isConnected()) { ... } else { ... }

"default" - это подключение по умолчанию, просто используйте $ Database-> getDataSource ('yourSecondDataSource'), чтобы использовать другое в случае, если первый отказывает.1004 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...