Lo que haces se llama una arquitectura "multi-tenant"
Con respecto a la solución, tienes que aplicar los privilegios:
https://dev.mysql.com/doc/refman/8.0...-provided.html
Es algo como:
Código SQL
[-]
GRANT PRIVILEGE? ON database.table TO 'username'@'host';
FLUSH PRIVILEGES;
Donde `PRIVILEGE?` es algo que debes elegir con intencion. La documentacion lo explica.
P.D: probablemente es mejor si haces un "split" donde tienes el usuario "admin" con todo y uno que solo tiene permisos "crud" como:
Código SQL
[-]
GRANT INSERT, UPDATE, DELETE, SELECT, REFERENCES, RELOAD on *.* TO 'username'@'host' WITH GRANT OPTION;