A database-per-school design gives every institution its own separate database, so one school's records can never appear in another school's query. EDUBase EMS uses this model: each school has a dedicated database and its own credentials, instead of sharing tables with other schools.
What is the difference between shared multi-tenancy and a database per school?
In a shared multi-tenant design, every school's rows live in the same tables and each row carries a school identifier. Isolation depends on every query in the application remembering to filter by that identifier.
In a database-per-school design, each institution's data sits in a separate database. The application connects to the right database for the signed-in school, so a forgotten filter cannot expose another school's records.
How does EDUBase isolate each school's data?
EDUBase EMS keeps a dedicated database per institution with per-school credentials, so no cross-school access is possible by design. The back end is PHP / Laravel APIs with MySQL, one schema per school.
- Staff sign in with the school's institute code plus a username and password; sessions expire.
- Per-user, per-screen and per-action privileges with campus scope control what each person can see and do.
- Parents log in with a rotating one-time code instead of a shared password.
- Attendance tablets, sender phones and gates hold their own revocable tokens.
What happens to backups and monitoring?
Regular backups are shipped off the application server and periodically tested by restore. External uptime and health checks alert the on-call team, alongside application-level checks for queues and schedulers.
All portal and app traffic runs over HTTPS, and the application runs containerised on managed cloud servers behind a CDN/WAF layer.
Can a school get its data out?
Yes. Every report exports to Excel or CSV, and full exports can be arranged on request. Because the school's data already lives in its own database, an export does not have to be separated from anyone else's records.
Shared multi-tenant tables versus a database per school
| Question | Shared multi-tenant tables | Database per school (EDUBase EMS) |
|---|---|---|
| Where a school's records live | In tables shared with other schools | In the school's own database |
| What keeps schools apart | A school identifier filter on every query | Separate databases and per-school credentials |
| Effect of a missed filter | Another school's rows can be exposed | Only the signed-in school's database is reachable |
| Exporting one school's data | Rows must be separated from other schools | The school's database is already separate |
Related
- Cloud & Infrastructure Services — Managed hosting, one database per school, backups, monitoring and secure networking for education workloads.
- Data Migration & Onboarding — Students, families, fee plans, old dues, past payments and staff moved from Excel or any system, verified before go-live.
- Hosting security on edubaseems.com
- Users privileges security on edubaseems.com
