Рассматривали ли вы создание отдельной схемы для каждой компании?
Вы должны попытаться более точно определить, чего вы хотите достичь.
Если вы хотите убедиться, что сбой HW не ставит под угрозу данные для более чем одной компании, напримервам нужно создавать разные экземпляры и запускать их на разных узлах.
Если вы хотите убедиться, что кто-то из компании A не может видеть данные, принадлежащие компании B, вы можете сделать это на уровне приложения, как сказал МатфейОтвет ПК, например,
Если вы хотите быть уверены, что кому-то, кому удастся скомпрометировать безопасность и запустить произвольный SQL-запрос к БД, вам нужно что-то более надежное, чем это.Вы хотите иметь возможность создавать резервные копии данных независимо друг от друга, чтобы вы могли безопасно создавать резервные копии данных о компании C по понедельникам и компании A по воскресеньям и иметь возможность восстанавливать только компанию C, тогда опять решение на основе приложений не поможет.