Я не знаю, как это сделать, но это возможные сценарии:
- DB-за клиента
- схема-за клиента
- одной схемы
Случай 1 является тривиальным с точки зрения резервного копирования / восстановления (или импорта / экспорта), случай 2 аналогичен. Я бы рискнул предположить, что эти два наиболее часто используемых подхода.
Третий вариант делает экспорт / импорт трудным, но не невозможным. Основная идея заключается в том, что таблица содержит данные всех компаний, но отличает компанию по внешнему ключу. Для экспорта и импорта потребуется один и тот же тип инструмента ETL , поскольку эти действия требуют фильтрации по идентификатору компании. Процедура экспорта принимает компанию в качестве параметра и запускает задачу только для этой компании. Дамп будет иметь форму операторов вставки (например, тот, который вы можете получить с MySQL или PostgreSQL) или XML (например, созданный DDLUtils ).
Бывают ситуации, когда настройка с одной схемой оказывается полезной, но я не думаю, что многопользовательский режим является одним из них.