Skip to contentSkip to content
EDUBaseCloud
Guide

Database per School vs Shared Multi-Tenant School ERP

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

QuestionShared multi-tenant tablesDatabase per school (EDUBase EMS)
Where a school's records liveIn tables shared with other schoolsIn the school's own database
What keeps schools apartA school identifier filter on every querySeparate databases and per-school credentials
Effect of a missed filterAnother school's rows can be exposedOnly the signed-in school's database is reachable
Exporting one school's dataRows must be separated from other schoolsThe school's database is already separate

Related

Frequently asked questions

Where is our school's data stored?

On managed cloud servers operated by EDUBase, in a database dedicated to your institution. Ask the EDUBase team for the current hosting details for your contract.

Can another school see our records?

No. Each school has its own database and per-school credentials, so no cross-school access is possible by design.

Are backups tested?

Yes. Backups are shipped off the application server and periodically tested by restore.

Do we need our own servers?

No. Hosting, updates and monitoring are handled by the EDUBase team, with no installation on the school's side.

Ready to see it on your own data?

Book a free demo, or message us on WhatsApp and we will reply in working hours.

Book a demo WhatsApp