У меня есть проект Codeigniter, который следует шаблону MVC, и он отлично работает с одной базой данных. Наша база данных состоит из нескольких объектов — приложений, пользователей и т. Д. — что не важно. На прошлой неделе мне поставили задачу: нам нужна копия проекта, которая будет иметь доступ к нашей информации, но должна иметь возможность иметь свою личную информацию. Еще одно ограничение — они должны владеть своей базой данных.
Переменные — Project_1, DB_1, Project_2, DB_2, DB_Shared.
Моя идея состоит в том, чтобы создать общую базу данных, которая будет иметь большую часть информации DB_1, чтобы Project_1 и Project_2 могли получить к ней доступ, и у каждого проекта будет своя собственная частная база данных, к которой другой проект не будет иметь доступа.
Сейчас я нахожусь на стадии планирования — я никогда не работал с несколькими базами данных, и я думаю, что это добавляет еще один уровень сложности, потому что с самого начала я не планировал, чтобы в моем проекте было несколько баз данных. Меня больше интересуют некоторые советы о том, как мне следует решать проблему, потому что кажется, что существует очень много решений, но в настоящий момент из-за недостатка опыта я не могу предвидеть проблемы, которые могут возникнуть.
Должен ли я переписать все вызовы БД? Поскольку у меня есть система ссылок, такая как url / controller / entity / id — id больше не является уникальным элементом, потому что сущности могут существовать в базе данных 2.
Должен ли я написать поля подключения? Потому что на страницах, где мне нужно отобразить все данные, мне нужно объединить два ответа вместе, и мне нужно как-то различать результаты.
Задача ещё не решена.
Других решений пока нет …