У меня есть веб-приложение, встроенное в codeigniter и размещенное с облачным управлением . Я использую обычную базу данных MySQL для всех своих данных, и теперь я хочу использовать базу данных mongodb в дополнение к базе данных MySQL.
Я хочу использовать mongodb в качестве очереди заданий для сохранения сообщений между моими работниками и серверами приложений. Я получил вдохновение, чтобы сделать это из этого урока: http://www.captaincodeman.com/2011/05/28/simple-service-bus-message-queue-mongodb/
Возможно ли это (используя два разных типа баз данных одновременно – с / без взлома codeigniter, я бы предположил, что это так)
Какие-нибудь советы для этого?
—- РЕДАКТИРОВАТЬ —-
Я включил эту библиотеку в свой проект CI: https://github.com/alexbilbie/codeigniter-mongodb-library
И когда я пытаюсь загрузить его через: $this->load->library('mongo_db');
Я сталкиваюсь с этим:
Я не уверен, как я могу заставить mysql и mongodb работать вместе …
—- РЕДАКТИРОВАТЬ —-
Nevermind мой вышеупомянутый вопрос, я неправильно настроил файл конфигурации и запутал ошибку …
Да, это возможно, из коробки.
Вам нужно определить две группы в вашей конфигурации: одну для mysql и одну для mongodb. В вашем приложении вы можете загрузить в эти базы данных по имени группы.
В вашем confugration.php:
$db['mysql']['hostname'] = "localhost"; $db['mysql']['username'] = "root"; $db['mysql']['password'] = ""; $db['mysql']['dbdriver'] = "mysql"; //... (full config omitted for brevity) $db['mongodb']['hostname'] = "localhost"; $db['mongodb']['username'] = "root"; $db['mongodb']['password'] = ""; $db['mongodb']['dbdriver'] = "mongodb"; //... (full config omitted for brevity)
И тогда вы загрузите в свои базы данных следующим образом:
$mysqlDB = $this->load->database('mysql', TRUE); $mongoDB = $this->load->database('mongodb', TRUE);
Ознакомьтесь с руководством пользователя о том, как подключиться к нескольким базам данных и как указать группы конфигурации .