Common options: database-per-tenant (strong isolation, higher cost), schema-per-tenant (good isolation, moderate complexity), or shared tables with `tenant_id` (cheapest, hardest to enforce correctly). No matter what, you must enforce tenant scoping everywhere and add the right indexes and security checks.
Expanding on the short answer — what usually matters in practice:
A tiny example (an explanation template):
// Example: discuss trade-offs for "multi-tenancy-in-a-monolith:-what-are-common-dat"
function explain() {
// Start from the core idea:
// Common options: database-per-tenant (strong isolation, higher cost), schema-per-tenant (go
}